Informática: Noções de Aplicação Python e R. API
Informática: Noções de Aplicação Python e R. API
Informática: Noções de Aplicação Python e R. API
SISTEMA DE ENSINO
Livro Eletrônico
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Apresentação.................................................................................................................................................... 3
1. Fundamentos de Lógica de Programação. . ..................................................................................... 3
2. API (Interface de Programação de Aplicativos)........................................................................ 23
3. Noções de Aplicação Python. ............................................................................................................. 24
4. Linguagem R............................................................................................................................................... 31
Resumo............................................................................................................................................................. 35
Exercícios......................................................................................................................................................... 40
Gabarito............................................................................................................................................................ 55
Gabarito Comentado................................................................................................................................... 56
Referências...................................................................................................................................................... 87
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 2 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Apresentação
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 3 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Instruções
• Instruções são um conjunto de regras ou normas definidas para a realização ou em-
prego de algo. Em informática, é o que indica a um computador uma ação elementar a
executar.
• Convém ressaltar que uma ordem isolada não permite realizar o processo completo,
para isso é necessário um conjunto de instruções colocadas em ordem sequencial ló-
gica. Mas, até mesmo as coisas mais simples, podem ser descritas por sequências
lógicas.
Por exemplo, para fazer um bolo segue-se uma sequência lógica de passos:
bater ovos com açúcar;
acrescentar farinha de trigo e leite;
colocar fermento em pó e levar para assar.
Você tem que seguir essa sequência da forma que está, senão o bolo não fica bom.
• Assim, uma instrução tomada em separado não tem muito sentido; para obtermos o
resultado, precisamos colocar em prática o conjunto de todas as instruções, na ordem
correta.
Algoritmos
• Um algoritmo é uma sequência finita de passos (ou instruções), descritos em uma or-
dem lógica, que visam atingir um objetivo bem definido.
Obs.: Dá-se o nome de algoritmo a uma sequência lógica finita de instruções cujo objetivo
é a execução de uma determinada tarefa.
• As instruções devem ser bem definidas e não ambíguas, bem como o tempo e o esforço
para executar as instruções devem ser finitos.
• O problema solucionado por algoritmo deve ser: claro e bem definido.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 4 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Como exemplos tem-se os algoritmos das operações básicas (adição, multiplicação, divisão
e subtração) de números reais decimais. Outros exemplos seriam os manuais de aparelhos
eletrônicos, como um videocassete, que explicam passo a passo como, por exemplo, gravar
um evento.
• Um algoritmo tem cinco características importantes:
• Um algoritmo opera sobre um conjunto de entradas de modo a gerar uma saída que
seja útil para o usuário.
• A formulação de um algoritmo geralmente consiste em um texto contendo comandos
(instruções), que devem ser executados numa sequência prescrita (receita).
Linguagens de Programação
• As instruções dadas ao computador possuem regras e uma sintaxe própria, como uma
linguagem tipo português ou inglês.
• Infelizmente, um computador só é capaz de seguir programas que estejam escritos em
linguagem de máquina, que normalmente é obscura e desconfortável.
• A linguagem de máquina é a linguagem natural do computador, definida pelo seu pro-
jeto de hardware.
– As instruções do programa, escritas em linguagem de máquina, consistem em uma
série de dígitos binários.
– Como estão mais próximas da linguagem do computador, são muito complexas para
o entendimento humano.
• Os seres humanos, entretanto, acham mais conveniente escrever os programas em
linguagem de nível mais elevado, como o Pascal por exemplo.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 5 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Obs.: É interessante notar que, quanto mais próxima da linguagem humana (alto nível) é
uma linguagem de programação, mais fácil e produtivo é o processo de desenvolvi-
mento, e mais lento é o processo de tradução das instruções.
Por outro lado, quanto mais distante da linguagem humana (baixo nível) é uma lin-
guagem de programação, mais rápido é o processo de tradução, e mais lento é o pro-
cesso de desenvolvimento de programas.
Programas
• Os programas de computadores nada mais são do que algoritmos escritos numa lin-
guagem de computador (Pascal, C, Visual Basic etc.) e que são interpretados e execu-
tados por uma máquina, no caso um computador.
• Notem que dada essa interpretação rigorosa, um programa é por natureza muito espe-
cífico e rígido, em relação aos algoritmos da vida real.
• Chama-se de programas os algoritmos que são traduzidos para uma linguagem de
computador (por exemplo: Cobal, Fortran, Pascal, C, Java etc.), cujos passos (chama-
dos de comandos) são interpretados e executados pelo computador.
• Um algoritmo NÃO representa, necessariamente, um programa de computador, e sim
os passos necessários para realizar uma tarefa ou solucionar um problema.
Obs.: Um algoritmo não é uma solução para um problema, mas um caminho para obtê-la.
Sendo assim, podem existir vários caminhos para uma mesma solução, e, conse-
quentemente, vários algoritmos diferentes para o mesmo problema.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 6 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Fases de um Algoritmo
• Ao construir um algoritmo, precisamos primeiro dividir o problema apresentado em três
fases fundamentais:
– Entrada: sãos os dados que serão processados pelo algoritmo;
– Processamento: representa os procedimentos necessários para se obter o resultado
final; e
– Saída: são os dados gerados depois do processamento, ou seja, os dados já proces-
sados!
Representação de Algoritmos
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 7 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
• Linguagem algorítmica:
– Também conhecida por pseudocódigo, portugol, pseudolinguagem ou Português
Estruturado.
– Os algoritmos são expressos em uma linguagem intermediária entre a linguagem
natural e uma linguagem de programação, que não segue um formalismo tão rígido
quanto o das linguagens de programação.
– É a representação mais utilizada em concursos públicos e que utilizaremos nes-
ta aula!
Variáveis
• Variáveis são endereços de memória destinados a armazenar informações TEMPO-
RARIAMENTE. Para que a programação se torne mais fácil, podemos colocar nomes
legíveis nesses endereços de memória e utilizá-los no algoritmo.
• Uma variável sempre está associada a quatro (4) características:
– o nome da variável: necessário para diferenciá-la das demais;
– o endereço da variável: necessário para localizar a variável na memória principal;
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 8 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
– o tipo de dado associado à variável: indica o tipo de informação que pode ser arma-
zenada naquela área de memória e é necessário para que o compilador trate cada
variável de acordo com o seu tipo;
– o conteúdo da variável: é a informação efetivamente guardada na variável.
• As variáveis de um algoritmo representam os dados que devem ser armazenados na
memória do computador para posterior processamento durante a execução do progra-
ma.
– Para o armazenamento desses dados é preciso saber qual o seu tipo e como eles
poderão ser identificados para viabilizar a sua utilização e manipulação, a qualquer
momento.
– Assim, as variáveis precisam ser declaradas no programa, recebendo um nome para
serem identificadas, um tipo para especificar que valores pode armazenar e também
podem receber um valor inicial.
var
<identificador1>[, <identificador2>,...]: <tipo1>;
<identificador3>[, <identificador4>,...]: <tipo2>;
Os elementos entre [] são opcionais.
• Uma variável nunca é eternamente igual a um valor, seu conteúdo pode ser alterado
a qualquer momento. Portanto para atribuir valores a variáveis podemos usar o sinal
de “:”.
Exemplo:
var
Salário: real;
Idade: inteiro;
Nome: cadeia;
Sexo: caracter;
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 9 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Constantes
• São ENDEREÇOS DE MEMÓRIA destinados a armazenar informações FIXAS, que NÃO
se alteram durante a execução do programa. Exemplo: PI = 3.1416.
• A declaração em pseudolinguagem das constantes utilizadas em um algoritmo é feita
logo no início, antes da declaração das variáveis, da seguinte forma:
const
<identificador1> = <valor1>;
<identificador2> = <valor2>;
<identificadorN> = <valorN>;
Exemplo:
var
nota1, nota2, nota3: inteiro;
peso: real;
_nome123: caractere;
const
PI = 3,14;
Obs.: A diferença entre variáveis e constantes é que as informações contidas nas variáveis
podem ser modificadas no decorrer de um algoritmo e as informações relacionadas a
constantes são declaradas no início do algoritmo e não podem ser mais modificadas.
Identificadores
• São os nomes atribuídos a variáveis, constantes e algoritmos.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 10 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Exemplos:
nome telefone idade_filha
nota1 salario pi
Entrada de dados:
Saída de dados:
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 11 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
FLUXOGRAMA PORTUGOL
LEIA (var 1,..., var n)
IMPRIMA (var 1,..., var n)
ou
IMPRIMA (“mensagem”, var )
Exemplo:
leia(num1, num2);
escreva(media);
Operadores
• São símbolos utilizados em expressões que contêm variáveis, constantes e funções.
• De acordo com os tipos de dados das variáveis e o resultado da operação, os operado-
res podem ser divididos em três tipos: aritméticos, relacionais e lógicos.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 12 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Operadores Aritméticos
São aqueles que atuam apenas sobre constantes, variáveis e funções numéricas, gerando
um resultado numérico em uma expressão. São eles:
+ adição
- subtração binária
* multiplicação
/ divisão
** ou ^ exponenciação
- menos unário
Operadores Relacionais
São aqueles que realizam uma comparação entre duas expressões e geram resultados
lógicos, isto é Verdadeiro ou Falso, são eles:
= igual
<> ou ≠ diferente
> maior que
< menor que
>= ou ≥ maior ou igual
<= ou ≤ menor ou igual
Operadores Lógicos
São aqueles que geram resultados lógicos através da comparação entre duas expressões
lógicas, são três:
conjunção E É aquele que exige que todos os termos da expressão sejam verdadeiros
para que a expressão inteira seja verdadeira.
disjunção OU É aquele que exige que apenas um dos termos da expressão seja verda-
deiro para que a expressão inteira seja verdadeira.
negação NÃO É aquele que inverte ou nega o valor lógico de um elemento.
Os operadores lógicos têm seu resultado baseado na Tabela Verdade. Eles operam sobre
variáveis lógicas (V ou F) e têm como resultado valores lógicos (V ou F).
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 13 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
OU V F E V F NÃO V F
V V V V V F F V
F V F F F F
Prioridades
• Na execução de um comando complexo, podemos encontrar duas ou mais operações
numéricas uma ao lado da outra, e neste caso devemos seguir regras de prioridades de
operadores para sabermos qual será executado primeiro.
• No Portugol, as prioridades são:
PRIORIDADE COMANDO
1ª parênteses
2ª funções
3ª menos unário
4ª ** ou ^
5ª * e /
6ª + e -
7ª relacionais
8ª lógicos NÃO
9ª E
10ª OU
Expressões
• Para a construção dos algoritmos todas as expressões aritméticas devem ser coloca-
das em linhas. É importante também ressalvar o uso dos operadores correspondentes
da aritmética tradicional para a computacional.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 14 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Fonte: Paradzinski, 2013
(2+2)/2=2
2+2/2=3
Funções
• Uma função é um instrumento (Sub–algoritmo) que tem como objetivo RETORNAR UM
VALOR OU UMA INFORMAÇÃO.
• A chamada de uma função é feita através da citação do seu nome seguido opcional-
mente de seu argumento inicial entre parênteses.
• As funções podem ser predefinidas pela linguagem ou criadas pelo programador de
acordo com o seu interesse.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 15 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Fonte: Paradzinski, 2013
mento lógico, entretanto, cada linguagem de programação possui suas funções pró-
Fonte: Paradzinski, 2013
{Linhas de Comentário}
• Podemos inserir em um algoritmo comentários para aumentar a compreensão do mes-
Exemplo:
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 16 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Exemplo 1:
Algoritmo
início
comandos
fim.
Exemplo 2:
Algoritmo maiorDeDoisNumerosInteiros;
var
início
senão
fim do se
fim
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 17 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 18 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Fonte: Araújo, 2012
• Para facilitar a inspeção do algoritmo linha a linha, foi utilizada uma tabela na qual pre-
enchemos os valores de cada variável em um determinado passo do algoritmo. Para
esse teste, o salário-base será de R$ 1.000,00.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 19 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
• Para um algoritmo, podemos fazer vários testes de mesa, informando várias entradas
diferentes para saber se o algoritmo trabalha de forma consistente para qualquer en-
trada.
FLUXOGRAMA PORTUGOL
Exemplo de um algoritmo em que todos os comandos são executados de cima para baixo
de forma sequencial -> Calcular a área de um triângulo:
Algoritmo
var
B, H, AREA: real;
início
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 20 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Estruturas de Repetição
Estruturas de Dados
Pilha
• Dada uma pilha P=( a(1), a(2),..., a(n) ), dizemos que a(1) e o elemento da base da pilha;
a(n) e o elemento topo da pilha; e a(i+1) está acima de a(i).
• Pilhas são também conhecidas como listas LIFO (last in first out).
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 21 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra e.
Pilha é uma estrutura de dados cujo acesso aos seus elementos segue a lógica LIFO, apenas!
Fila
• É uma lista linear em que a inserção é feita numa extremidade e a eliminação na outra.
• Filas são também conhecidas como listas com disciplina de acesso: FIFO (Fist In
First Out).
Lista
• Compostas por nós que apontam para o próximo, podendo ser encadeadas de formas
diferentes.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 22 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Árvores
• Cada elemento tem um ou mais elementos associados.
Obs.: O termo API designa um conjunto de rotinas e padrões estabelecidos por um software
para a utilização das suas funcionalidades por programas aplicativos que não estão
interessados em detalhes da implementação do software, mas apenas em usar seus
serviços.
• Uma API é uma espécie de mensageiro que recebe pedidos e requisições (requests) de
várias pessoas e lugares diferentes e diz para o sistema o que você quer fazer e depois
retorna a resposta (response) para as pessoas que pediram.
Figura. API
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 23 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Exemplos
Para ficar mais claro para você esse conceito apresentado, vou exemplificálo utilizando um
dispositivo que talvez seja a primeira tela que você vê quando acorda: o seu celular. A cada
instante em que você utiliza aplicativos (apps) do seu celular, como Facebook, Instagram,
Gmail etc., você está utilizando uma API, pois os apps se conectam com a internet (rede) e
enviam os dados da sua requisição a um servidor. Esse servidor recupera os dados enviados,
os interpreta, executa as ações necessárias para atender a sua solicitação, para somente
depois enviar de volta os resultados desta solicitação. O seu app receberá os resultados da
sua solicitação, os interpretará e os apresentará de maneira amigável e transparente ao usu-
ário.
O Google Maps também é um exemplo bem interessante na área de APIs. Por intermédio do
seu código original, muitos outros sites e aplicações utilizam os dados do Google Maps adap-
tando-o da melhor forma a fim de utilizar esse serviço.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 24 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
• Para que seja usado em determinado sistema operacional não suportado, é possível
gerar o Python a partir do programa fonte utilizando um compilador C. Nesse caso,
o código fonte é traduzido para o formato bytecode, que é multiplataforma e pode ser
distribuído de forma independente.
– Você faz seu programa Python (.py), compila-o transformando num bytecode (.pyc),
e, então, pode-se pegar esse bytecode e jogar em qualquer plataforma que possua
uma máquina virtual Python (conhecida como PVM -Python Virtual Machine): Win-
dows, Mac, Linux etc., SEM precisar recompilar. É O MESMO CÓDIGO!
• Python é uma linguagem com verificação de tipos, mas tipada dinamicamente, o que
significa que o próprio interpretador infere os tipos de dados SEM a necessidade de o
desenvolvedor informar.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 25 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 26 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Exemplo:
• Existe uma coleção de métodos de lista, como inserir ao final (append), inserir em uma
posição arbitrária (insert), remover (remove) e ordenar (sort), assim como uma coleção
de métodos para dicionários, como para obter chaves (Keys), valores (values), para co-
piar (copy) e para verificar a existência de uma chave (has_key).
– Para inserir um novo dado a uma lista qualquer, utilizamos um método chamado.
append. Exemplo:
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 27 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 28 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 29 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
• Inclui suporte para concorrência com suas linhas de execução (threads) e suporte para
programação de rede com seus soquetes. Tem também mais suporte para programa-
ção funcional que outras linguagens de programação não funcionais.
• A palavra-chave lambda, em Python, é utilizada para criar funções anônimas (funções
sem nome predefinido).
• Detalhes para a função range no Python:
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 30 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Exemplos:
>>> list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> list(range(1, 11))
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> list(range(0, 30, 5))
[0, 5, 10, 15, 20, 25]
>>> list(range(0, 10, 3))
[0, 3, 6, 9]
>>> list(range(0, -10, -1))
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> list(range(0))
[]
>>> list(range(1, 0))
[]
>>> list(range(0, 12))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
4. Linguagem R
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 31 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
R é case-sensitive.
Exemplos de Operadores:
Operadores Aritméticos Operadores Lógicos
+ Soma > Maior
- Subtração < Menor
*multiplicaçãMultiplicação >= Maior ou igual
/ Divisão <= Menor ou igual
^ ou ** Potenciação == Igual
!= Diferente
Prioridades de operações:
1. Potência;
2. Multiplicação e Divisão;
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 32 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
3. Adição e Subtração.
R é uma linguagem interpretada tipicamente utilizada através de um interpretador de co-
mandos. Digita-se o comando e, ao pressionar Enter, a resposta é exibida, como ilustrado a
seguir.
> comando
[1] resposta
>
• Como exemplo, se um usuário escreve “4+2” no comando de inserção e pressiona Enter,
o computador responde com “6”, conforme se mostra abaixo:
> 4+2
[1] 6
Outros exemplos:
> 20
[1] 20
> “cidade”
[1] “cidade”
> 20 + 20
[1] 40
> 2^5
[1] 32
> 3 ** 2
[1] 9
> 20 > 40
[1] FALSE
> 300 == 300
[1] TRUE
> 200!= 200
[1] FALSE
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 33 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Ajuda do programa:
> help ()
ou
>help (tópico)
> q ( )
ou
> quit ( )
• R vem com funções básicas que fazem gráficos estatísticos de todas as naturezas
(como: histogramas, gráficos de dispersão, gráficos de barras etc.).
• Na linguagem R entidades são objetos.
• Objetos têm que ter um nome.
• O objeto é criado quando da sua primeira atribuição.
• Existem 3 formas de atribuir valor a um objeto:
Objeto = valor ou
Objeto <- valor ou
Valor -> objeto
• Vetor: recebem vários valores em uma única sequência (uma linha). Vetores admitem
armazenar vários valores diferentes, todos de um mesmo tipo.
• Listas: admitem armazenar vários valores diferentes, mesmo de tipos diferentes.
• Matriz: recebem vários valores em várias linhas e colunas. Matrizes são vetores com
duas dimensões (e por isso só possuem elementos de uma mesma classe).
• Fatores podem ser vistos como vetores de inteiros que possuem rótulos (levels).
• A linguagem R possui estruturas de ifs, else, for, while etc. que serão destacadas nas
questões sobre a linguagem. Espero que aproveitem!
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 34 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
RESUMO
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 35 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 36 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 37 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 38 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 39 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
EXERCÍCIOS
Lógica de Programação
que a opção que determina uma lista de procedimentos bem definida, que pega algum valor,
ou conjunto de valores como entrada, e produz algum valor ou conjunto de valores como
saída.
a) Algoritmo.
b) Código.
c) Chave
d) Inserção.
e) Loop.
e) uma palavra especial utilizada pela linguagem para identificar suas instruções de controle.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 40 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 41 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 42 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
if 5 > 2
{
print(“True!”)
}
A sintaxe do programa está correta e, quando executado, ele apresentará o seguinte resulta-
do.
True!
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 43 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
L2=[40,50]
L1.append(L2)
print L1
Assinale a opção que descreve corretamente o que acontece quando esse programa é execu-
tado no Python 2.7.
a) Produz uma mensagem de erro, porque tenta executar uma operação inválida.
b) Exibe “[10, 20, 30, [40, 50]]”.
c) Exibe “[10, 20, 30, 40, 50]”.
d) Exibe “[10, 20, 30], [40, 50]”.
e) Exibe “[]”.
L2=[40,50]
L1.append(L2)
print (L1)
Assinale a opção que descreve corretamente o que acontece quando esse programa é execu-
tado no Python 3.7.4.
a) Produz uma mensagem de erro, porque tenta executar uma operação inválida.
b) Exibe “[10, 20, 30, [40, 50]]”.
c) Exibe “[10, 20, 30, 40, 50]”.
d) Exibe “[10, 20, 30], [40, 50]”.
e) Exibe “[]”.
Questão 10 (INÉDITA/2020) Em vez de vetores, Python inclui somente dois tipos de estrutu-
ra de dados: listas e dispersões, chamadas de dicionários. R é uma linguagem e também um
ambiente de desenvolvimento integrado para cálculos estatísticos e gráficos.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 44 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 45 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 46 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Python é uma linguagem livre de alto nível, orientada a objetos e de difícil leitura, pois não
permite indentação de linhas de código.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 47 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a) resultado.add(a)
a, b = b, a+b
b) resultado.insert(a)
a, b = b, a+b
c) resultado.append(a)
a, b = b, a+b
d) resultado.add(a)
a, b = a, a+b
e) resultado.append(a)
a, b = a+b, b
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 48 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
O trecho exibe:
a) [7, 6, 5]
b) [7]
c) []
d) [7, 6, 5, 4, 3, 2]
e) [7, 6, 5, 4, 3, 2, 1]
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 49 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a) Ocorrerá um erro de execução na linha “def tipo(self):” logo abaixo de “class Basset(Ca-
chorro):”.
b) A execução de “print(cachorro2.tipo())” mostrará o valor “10” na saída padrão.
c) A execução de “print(cachorro2.tipo())” mostrará o valor “100” na saída padrão.
d) Ocorrerá um erro de execução na linha “print(cachorro2.tipo())”.
É correto afirmar que:
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 50 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a) o Fragmento 1 está incorreto, pois laços não podem ter uma cláusula else.
b) no Fragmento 2, a instrução for está incorreta, pois ela não pode iterar sobre a.
c) o Fragmento 1 está incorreto, pois não é possível iterar sobre sequências numéricas utili-
zando a função range.
d) no Fragmento 1 é verificado se o quociente da divisão de n por x corresponde a 0.
e) os dois fragmentos de código estão corretos.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 51 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Linguagem R
Questão 32 (INÉDITA/2020) Python é uma linguagem muito usada para análise e manipu-
lação de dados estatísticos.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 52 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a) 9
b) 6
c) 3
d) 18
e) 15
a) 7
b) 9
c) 6
d) 5
e) 8
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 53 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a) nascimento=1985
b) 1985
c) “João”
d) nome=”João”
e) 1234
a) 9
b) 1
c) 144
d) 81
e) 4
a) 108
b) 100
c) 102
d) 92
e) 52
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 54 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
GABARITO
1. a 28. C
2. d 29. a
3. e 30. C
4. a 31. b
5. b 32. E
6. E 33. c
7. c 34. e
8. b 35. c
9. b 36. d
10. E 37. b
11. d
12. d
13. E
14. d
15. c
16. a
17. a
18. C
19. E
20. d
21. e
22. c
23. d
24. c
25. a
26. e
27. d
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 55 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
GABARITO COMENTADO
Lógica de Programação
Letra a.
Dá-se o nome de algoritmo a uma sequência lógica finita de instruções cujo objetivo é a exe-
cução de uma determinada tarefa. Trata-se de uma lista de procedimentos bem definida, que
pega algum valor, ou conjunto de valores como entrada, e produz algum valor ou conjunto de
valores como saída.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 56 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra d.
Em linguagem de programação, variáveis são recipientes (endereços de memória) que ar-
mazenam informações de um determinado tipo para que seja possível a manipulação delas
pelos programas.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 57 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra e.
O algoritmo está quase correto. No entanto, mesmo que o usuário informe ‘F’ ou ‘M’, ele não
identificaria corretamente o seu sexo. Isso ocorre porque foi utilizado o conector lógico E nas
condições. Então, nunca um caracter poderá ser igual a ‘F’ e ‘f’ ao mesmo tempo. O mesmo
ocorre também com ‘M’ e ‘m’. Sendo assim, as condições retornariam falsas e a execução
de dados.
a) fila e pilha.
b) vetor e lista.
c) fila e vetor.
d) vetor e pilha.
e) fila e lista.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 58 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra a.
Questão aborda a definição de duas estruturas de dados bem conhecidas. A primeira é a Fila,
que se baseia no princípio FIFO (First in, first out – Primeiro a entrar, primeiro a sair). Na fila
são realizadas duas operações básicas: adicionar um elemento ao final da fila (ENQUEUE),
Já a pilha baseia-se no princípio LIFO (LAST in, FIRST out – Último a entrar, primeiro a sair).
Na pilha existem duas funções básicas: PUSH(Empilha), que insere um dado no topo da pilha,
de dados;
• Lista: compostas por nós que apontam para o próximo, podendo ser encadeadas de
formas diferentes; e
mo que designa um conjunto de rotinas e padrões estabelecidos por um software para a uti-
lização das suas funcionalidades por programas aplicativos que não estão interessados em
a) Algoritmo.
b) API.
c) Laço.
d) DLL.
e) UML.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 59 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra b.
API é o acrônimo de Application Programming Interface (ou Interface de Programação de
Aplicativos). Trata-se de um software intermediário que permite que duas ou mais aplicações
conversem entre si.
if 5 > 2
{
print(“True!”)
}
A sintaxe do programa está correta e, quando executado, ele apresentará o seguinte resultado.
True!
Errado.
A sintaxe utilizada está incorreta, pois possui erro de sintaxe, em virtude de utilização inde-
vida das chaves. Também não foi inserida a indentação do código. Vide o erro destacado na
figura seguinte.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 60 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra c.
a) Errada. Python é uma linguagem interpretada e pseudocompilada, o que significa que um
código-fonte escrito em Python é executado pelo interpretador e, em seguida, executado pelo
sistema operacional.
b) Errada. Python é uma linguagem com verificação de tipos, mas tipada dinamicamente,
o que significa que o próprio interpretador infere os tipos de dados sem a necessidade de o
desenvolvedor informar.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 61 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Assinale a opção que descreve corretamente o que acontece quando esse programa é execu-
tado no Python 2.7.
a) Produz uma mensagem de erro, porque tenta executar uma operação inválida.
b) Exibe “[10, 20, 30, [40, 50]]”.
c) Exibe “[10, 20, 30, 40, 50]”.
d) Exibe “[10, 20, 30], [40, 50]”.
e) Exibe “[]”.
Letra b.
O comando L1.append(L2) irá inserir o conteúdo de L2 ao final de L1. Mas, observe que o mé-
todo append inclui a lista L2 como se fosse só um elemento, assim L2 é tratado como se fosse
uma coisa só nesse contexto! Teremos então L1=[10,20,30,[40,50]] e essa lista final possui 4
elementos ao invés de 5. Cuidado com essa pegadinha, a grande maioria dos concurseiros
marcaria a letra C como resposta, caso não tivesse prestado atenção! Quanto esse programa
for executado, então exibirá o valor de L1 que é [10,20,30,[40,50]].
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 62 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
L2=[40,50]
L1.append(L2)
print (L1)
Assinale a opção que descreve corretamente o que acontece quando esse programa é execu-
tado no Python 3.7.4.
a) Produz uma mensagem de erro, porque tenta executar uma operação inválida.
b) Exibe “[10, 20, 30, [40, 50]]”.
c) Exibe “[10, 20, 30, 40, 50]”.
d) Exibe “[10, 20, 30], [40, 50]”.
e) Exibe “[]”.
Letra b.
O print() é uma função do Python utilizada para imprimir alguma mensagem na tela. O uso de
parênteses no comando PRINT se tornou obrigatório a partir da versão 3.X do Python. Observe
na figura seguinte o erro reportado pela falta de parênteses. Após correção, tivemos sucesso!
O comando L1.append(L2) irá inserir o conteúdo de L2 ao final de L1. Mas, observe que o mé-
todo append inclui a lista L2 como se fosse só um elemento, assim L2 é tratado como se fosse
uma coisa só nesse contexto! Teremos então L1=[10,20,30,[40,50]] e essa lista final possui 4
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 63 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
elementos ao invés de 5. Cuidado com essa pegadinha, a grande maioria dos concurseiros
marcaria a letra C como resposta, caso não tivesse prestado atenção!
Quando esse programa for executado, então exibirá o valor de L1 que é [10,20,30,[40,50]].
Questão 10 (INÉDITA/2020) Em vez de vetores, Python inclui somente dois tipos de estrutu-
ra de dados: listas e dispersões, chamadas de dicionários. R é uma linguagem e também um
ambiente de desenvolvimento integrado para cálculos estatísticos e gráficos.
Errado.
Em vez de vetores, Python inclui três tipos de estrutura de dados: listas; listas imutáveis, cha-
madas de tuplas; e dispersões, chamadas de dicionários.
R é uma linguagem orientada a objetos muito usada para análise e manipulação de dados
estatísticos e também pode ser considerada um ambiente de desenvolvimento integrado para
cálculos estatísticos e gráficos.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 64 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra d.
a) Errada. Python é uma linguagem interpretada, não compilada.
b) Errada. Python é uma linguagem com verificação de tipos, mas tipada dinamicamente,
o que significa que o próprio interpretador infere os tipos de dados sem a necessidade de o
desenvolvedor informar.
c) Errada. A tupla é equivalente a uma lista imutável, seu valor não pode ser alterado.
d) Certa. Python é uma linguagem de scripting orientada a objetos, interpretada e relativa-
mente recente (início dos anos 90).
Letra d.
A linguagem Python é uma linguagem de alto nível construída para trabalhar com o conceito
de produtividade e legibilidade.
A legibilidade visa tornar simples, porém eficaz, a escrita do código. Nas estruturas de con-
trole condicional, por exemplo, a forma correta na escrita é if e else. Caso haja condições
intermediárias usa-se elif.
Veja um exemplo:
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 65 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
3 print(‘Você é adolescente’)
4 elif idade >= 20 and idade < 30:
5 print(‘Você é jovem’)
6 elif idade >= 30 and idade <= 100:
7 print(‘Você é adulto’)
8 else:
9 print(‘idade não encontrada!’)
Errado.
Os comentários incluídos nas linhas dos scripts Python não são processados, uma vez que
correspondem a notas explicativas que têm o objetivo de descrever algo que se tenha neces-
sidade, para melhor organizar os códigos.
Letra d.
A linguagem Python é uma linguagem de alto nível, orientada a objetos, e possui classes,
métodos, herança etc. No Python há uma classe chamada String que possui vários métodos
capazes de trabalhar com informações de texto (strings). O método capitalize tem como ação
transformar o primeiro caractere da string em maiúscula. Veja exemplo:
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 66 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra c.
Na linguagem Python a sentença raise é usada para provocar uma exceção, que pode ser tra-
tada pelo código que chamou aquela parte do programa.
Veja exemplo:
No trecho de código abaixo na linguagem Python há uma verificação condicional para o valor
da variável y. Caso y assuma o valor zero (0), uma exceção (ZeroDivisionError) é invocada
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 67 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
neste ponto do código e o desenvolvedor tem a opção de fazer o tratamento no próprio trecho
do algoritmo, impedindo a divisão por zero.
1 z, y = 1, 0
2 if y == 0:
3 raise ZeroDivisionError
4 else:
5 print ‘%d dividido por %d é %d’ % (z, y, z/y)
Letra a.
Uma função é um bloco de comandos que realiza uma ação para quem a chama. É possível
passar dados, chamados de parâmetros ou argumentos, dentro de uma função que também
pode retornar valores para quem a chamou.
Na linguagem Python, há muitas funções previamente construídas que podem ser usadas,
entretanto, é permitido ao desenvolvedor a definição ou criação de uma função devendo usar
a cláusula DEF.
Veja exemplo: a questão propõe a criação de uma função chamada “calcular” que recebe dois
valores a e b. No exemplo, a função calcular (linhas 1 a 3) é definida recebendo os valores
como argumentos e realiza a soma destes. Esta função retorna, por meio do comando return
(linha 3), o resultado da operação. Na linha 5, a função é chamada passando os valores 3 e 6
que devolve o resultado imprimindo na tela.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 68 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
1 def calcular(a,b):
2 result=a+b
3 return result
4
5 print(calcular(3,6))
Letra a.
Na linguagem Python, uma lista é representada como uma sequência de objetos (elemen-
tos) e dispõe de vários métodos e operadores para sua manipulação. Cada elemento da lista
contém um índice que começa em zero (0). A seguir destacamos a funcionalidade de cada
método proposto na questão:
Certo.
Na linguagem Python, o operador lógico de conjunção (“e”) é “and” e não “&&”.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 69 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Errado.
Python é uma linguagem livre de alto nível, orientada a objetos, de leitura simples, e que per-
mite indentação de linhas de código.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 70 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra d.
Um algoritmo de ordenação usando o método da bolha consiste em percorrer uma lista ou
vetor diversas vezes de modo que o maior elemento vá para o topo (fim da lista).
Assim, o método da bolha verifica se cada elemento da posição i é maior que o próximo (i+1).
Se for maior, trocam de lugar, se não, não trocam.
Deste modo, a ordenação é feita parcialmente inserindo os maiores elementos à esquerda.
[4, 3, 1, 9, 8, 7, 2, 5] – Como 4 é maior que 3, troca de lugar → [3, 4, 1, 9, 8, 7, 2, 5]
[3, 4, 1, 9, 8, 7, 2, 5] – Como 4 é maior que 1, troca de lugar → [3, 1, 4, 9, 8, 7, 2, 5]
[3, 1, 4, 9, 8, 7, 2, 5] – Como 4 é não é maior do que 9, permanecerá como está → [3, 1, 4, 9, 8,
7, 2, 5]
[3, 1, 4, 9, 8, 7, 2, 5] – Como 9 é maior do que 8, troca de lugar → [3, 1, 4, 8, 9, 7, 2, 5]
[3, 1, 4, 8, 9, 7, 2, 5] – Como 9 é maior do que 7, troca de lugar → [3, 1, 4, 8, 7, 9, 2, 5]
[3, 1, 4, 8, 7, 9, 2, 5] – Como 9 é maior do que 2, troca de lugar → [3, 1, 4, 8, 7, 2, 9, 5]
[3, 1, 4, 8, 7, 2, 9, 5] – Como 9 é maior do que 5, troca de Lugar → [3, 1, 4, 8, 7, 2, 5, 9]
Assim, teremos na Linha 1: [3, 1, 4, 8, 7, 2, 5, 9]
A partir daí, seguiremos o mesmo raciocínio: basta ir comparando “i” com o próximo número
e trocando de lugar se o número seguinte for menor. Assim, teremos:
Linha 2: [1, 3, 4, 7, 2, 5, 8, 9]
Linha 3: [1, 3, 4, 2, 5, 7, 8, 9]
Linha 4: [1, 3, 2, 4, 5, 7, 8, 9]
A quarta linha impressa garante que os valores 9, 8, 7,5 já estejam ordenados e terá o seguinte
resultado: [1, 3, 2, 4, 5, 7, 8, 9], sendo D a alternativa correta.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 71 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra e.
Na linguagem Python, o operador lógico de conjunção (“e”) é “and” e não “&&” como afirma a
alternativa E.
Exemplo: veja trecho de código
1 idade = int(input(‘Digite sua idade: ‘))
2 if idade >= 10 and idade < 20:
3 print(‘Você é adolescente’)
a) resultado.add(a)
a, b = b, a+b
b) resultado.insert(a)
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 72 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a, b = b, a+b
c) resultado.append(a)
a, b = b, a+b
d) resultado.add(a)
a, b = a, a+b
e) resultado.append(a)
a, b = a+b, b
Letra c.
Ambas as funções append() e insert() adicionam elementos em uma estrutura de dados do
tipo lista, enquanto a função add() não é usada para este fim.
Na função append() o elemento é adicionado no final da lista, enquanto a função insert() é
necessário passar como argumento a posição de inserção do elemento, o que não ocorre nas
alternativas dadas.
O trecho de código associado a questão deve exibir (iniciando de a=0 e b=1) uma lista de va-
lores que representam a soma dos dois elementos antecessores que sejam menor que 100.
Excluindo as alternativas que não possuem a função append(), restam duas alternativas (C
e E). Como a função append() sempre recebe como argumento “a” (append(a)) e “a” sempre
recebe a soma de “a+b” a alternativa correta é a letra C.
O trecho exibe:
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 73 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a) [7, 6, 5]
b) [7]
c) []
d) [7, 6, 5, 4, 3, 2]
e) [7, 6, 5, 4, 3, 2, 1]
Letra d.
A função range na linguagem Python pode ser entendida como: range(início, fim, passo).
O início é baseado no índice zero (0) e o fim é o índice final, com intervalo aberto, ou seja, não
está incluído. O passo é o salto ou diferença entre os índices.
Na questão, a função range formará os números de 10 até 2 (o 1 será excluído) com passo -1,
ou seja, decrescente. X = 10 9 8 7 6 5 4 3 2.
O comando print vai exibir os itens da lista a partir da posição de índice 3 até o fim [7, 6,5,4,3,2],
sendo a alternativa D correta.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 74 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a) Ocorrerá um erro de execução na linha “def tipo(self):” logo abaixo de “class Basset(Ca-
chorro):”.
b) A execução de “print(cachorro2.tipo())” mostrará o valor “10” na saída padrão.
c) A execução de “print(cachorro2.tipo())” mostrará o valor “100” na saída padrão.
d) Ocorrerá um erro de execução na linha “print(cachorro2.tipo())”.
Letra c.
No trecho de código da questão, nota-se uma relação de herança entre classes. Ou seja,
a classe Basset herda da classe Cachorro. É possível observar ainda o método tipo da classe
Cachorro sendo redefinido na classe filha Basset. Deste modo, se um objeto for instanciado a
partir da classe filha Basset ele irá se comportar conforme sua redefinição.
Nas últimas duas linhas do trecho de código da questão serão impressos, respectivamente,
os valores “10” e “100”. Deste modo, a alternativa correta é letra C. O objeto cachorro2 é ins-
tanciado a partir da classe Basset e, portanto, a saída é 100.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 75 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra a.
Em versões anteriores do Python (2.0), para a entrada de dados do tipo String era necessário
usar raw_input. Porém, em versões mais atuais da linguagem (3.0 e superior), o comando
input captura os dados como string também.
Apesar da questão não ter citado a versão da linguagem Python, raw_input é específico para
lidar com valores do tipo String e a alternativa correta é A (str).
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 76 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
É correto afirmar que:
a) o Fragmento 1 está incorreto, pois laços não podem ter uma cláusula else.
b) no Fragmento 2, a instrução for está incorreta, pois ela não pode iterar sobre a.
c) o Fragmento 1 está incorreto, pois não é possível iterar sobre sequências numéricas utili-
zando a função range.
d) no Fragmento 1 é verificado se o quociente da divisão de n por x corresponde a 0.
e) os dois fragmentos de código estão corretos.
Letra e.
a) Errada. Em Python, estruturas condicionais (if..else) podem ser usadas em qualquer parte
do código, bem como entre laços de repetição. Portanto, não há erros no fragmento 1.
b) Errada. No fragmento 2, “a” é um vetor ou lista de Strings e é possível “navegar” ou iterar
usando uma instrução “for”. Deste modo, não há erros no fragmento 2.
c) Errada. A função range() retorna uma série numérica no intervalo enviado como argumento,
sendo possível iterar sobre ela. Assim, não há erros na utilização da função range().
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 77 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
d) Errada. O fragmento 1 está correto, a descrição na alternativa não condiz com a funciona-
lidade do código. O operador % retorna o resto da divisão e não o quociente.
e) Certa. Conforme visto nos comentários anteriores, os dois fragmentos estão corretos e a
alternativa E está correta.
Letra d.
Em python, os elementos de uma lista são definidos por colchetes e separados por vírgula.
Uma forma simplificada de imprimir os elementos é por meio do comando PRINT com a se-
guinte regra: [ElementoInicial:ElementoFinal:Salto].
Na questão, somente é especificado o salto que é -1. Deste modo, o Python entende que deve
percorrer imprimindo os elementos de trás para frente (passo -1), sendo a alternativa correta
a letra D.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 78 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Certo.
Na linguagem Python o que prevalece é o tipo de criação do objeto. Na questão, o inteiro (“int”)
transformará um valor string em um valor inteiro. Se fizéssemos o contrário ( str(1) ), o valor
1 se transformaria em uma string. A prioridade sempre será do tipo e não do valor passado.
Letra a.
Nesta questão na linguagem Python há a definição de uma função chamada “dobra” que re-
cebe um argumento de entrada e realiza uma operação soma (o dobro do valor), armazena o
resultado em uma variável e retorna este valor (retorn x).
Nas quatro últimas linhas há um programa que chama a função “dobra”. Primeiramente é
atribuído à variável x o valor de 5. Em seguida, a função “dobra” é chamada duas vezes, con-
secutivamente, passando como argumento a variável x. Entretanto, o valor de x não é altera-
do, porque não há atribuição à variável x, permanecendo seu valor inalterada. Ao final, o valor
exibido para x será o mesmo, ou seja, 5.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 79 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Certo.
A linguagem e seu interpretador estão disponíveis para as mais diversas plataformas, desde
Unix (Linux, FreeBSD, Solaris, MacOS X etc.), Windows,.NET, versões antigas de MacOS até
consoles de jogos eletrônicos ou mesmo alguns celulares e palmtops (WIKIPEDIA, 2020).
Para algum sistema operacional não suportado, basta que exista um compilador C disponível
e gerar o Python a partir do seu código fonte. O código fonte é traduzido pelo interpretador
para o formato bytecode, que é multiplataforma e pode ser executado e distribuído sem fonte
original (WIKIPEDIA, 2020).
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 80 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra b.
Vamos ao detalhamento da função range:
Em range(0, 12), a função range cria uma lista de números que se seguem um após o outro (os
números foram dados como parâmetros). Mas, note que o segundo desses dois números não
está incluído na lista que o Python mostrará. Assim, em range(0, 12), conta de 0 a 11, e o 12
não é incluído, porque o intervalo é semiaberto, o que significa que ele inclui o primeiro valor,
mas não o último. Como resposta, teremos o intervalo [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].
Linguagem R
Questão 32 (INÉDITA/2020) Python é uma linguagem muito usada para análise e manipu-
lação de dados estatísticos.
Errado.
R é a linguagem (e também um ambiente de desenvolvimento integrado) muito usada para
cálculos estatísticos e gráficos.
Python é uma linguagem interpretada ou uma linguagem de script que pode ser usada para
várias finalidades, como: manipular dados grandes e executar matemática complexa; proto-
tipagem rápida ou para desenvolvimento de software pronto para produção; se conectar a
sistemas de banco de dados; em um servidor para criar aplicativos da Web etc.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 81 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a) 9
b) 6
c) 3
d) 18
e) 15
Letra c.
O valor correto da questão é 3.
No objeto x é armazenada a sequência do vetor c três vezes, ou seja, 3,6,9,3,6,9,3,6,9.
O objeto m armazena os elementos em formato de matriz (linhas e colunas), sendo a ordem
de inserção por linha (byrow=TRUE).
No objeto result é armazenada a raiz quadrada do elemento que está na posição m[3,3] (ou
seja, 9) sendo sua raiz = 3. Para exibir o resultado chama-se o objeto result.
Obs.: É importante não se esquecer de que o comando de atribuição tem três formas (=, <-
e ->).
Objeto = valor ou
Objeto <- valor ou
Valor -> objeto
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 82 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Deste modo, analise a sequência de passos usando console do R para manipular um vetor de
oito elementos e marque a alternativa CORRETA para o valor que será exibido.
a) 7
b) 9
c) 6
d) 5
e) 8
Letra e.
O valor armazenado e exibido no objeto result é 8 que corresponde ao vetor vet[6]. Veja
detalhamento a seguir:
1. Dentro de cada colchetes tem o índice ou posição do elemento no vetor vet.
2. Primeiramente, vamos resolver os colchetes mais internos:
1. vet[5] = 10
2. vet[1] = 9
3. vet[8]= 5
3. Fazendo os cálculos: 10-9+5 → 6
4. Deste modo: Result = vet[6] → 8
5. Result = 8
Essa questão exige competências de conhecimento na declaração de um vetor na linguagem
R (função c, índice começa de 1 etc.). É preciso ainda não confundir a posição (índice) com o
elemento armazenado no vetor e a precedência das operações (+, -). Quando os operadores
têm a mesma precedência as operações são realizadas da esquerda para a direita.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 83 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
a) nascimento=1985
b) 1985
c) “João”
d) nome=”João”
e) 1234
Letra c.
O valor que será exibido está na alternativa C (“João”). O índice de um objeto do tipo lista
mostra a informação contida na posição da lista (separada por vírgula), entretanto, o colchete
adicional descarta o rótulo ou nome do atributo da informação.
a) 9
b) 1
c) 144
d) 81
e) 4
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 84 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Letra d.
A sequência de comandos preenche e armazena no objeto MAT uma matriz com os elemen-
tos informados.
Nesta questão é importante conhecer vários argumentos que definem o formato correto e a
ordem de inserção dos elementos.
O argumento nrow define o número de linhas e o argumento ncol o número de colunas na
matriz. Neste caso, tem-se uma matriz 3x4 e os elementos devem ser inseridos pela li-
nha(byrow=TRUE). Deste modo, sabe-se que em MAT[3,2] o elemento é 9 que é armazenado
no objeto RESULT. Para exibir, eleva-se o elemento à potência de 2 o que resulta no valor 81.
O valor correto da saída está na alternativa D (81).
a) 108
b) 100
c) 102
d) 92
e) 52
Letra b.
O valor armazenado no objeto x é 100, entretanto, será exibido o valor 92 uma vez que é sub-
traído 8 no valor de x para exibição.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 85 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
Esta questão exige competências de conhecimento dos três diferentes modos do comando
de atribuição e sua direção (=, <- e ->), o operador de potência (**) e, principalmente, saber
que é possível fazer operações com o valor do objeto sem alterar seu conteúdo na memória.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 86 de 90
INFORMÁTICA
Noções de Aplicação Python e R. API
Patrícia Lima Quintão
REFERÊNCIAS
DEVMEDIA. Application Programming Interface: Desenvolvendo APIs de Software. 2018. Dis-
ponível em: <https://www.devmedia.com.br/application-programming-interface-desenvol-
vendo-apis-de-software/30548>. Acesso em: 06 ago. 2020.
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 87 de 90
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 88 de 90
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.
www.grancursosonline.com. 89 de 90
O conteúdo deste livro eletrônico é licenciado para SILVIO ROMERO CRUZ DE QUEIROZ - 10420930400, vedada, por quaisquer meios e a qualquer título,
a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal.