Baixe o app para aproveitar ainda mais
Prévia do material em texto
Questão 1Correta Em uma pesquisa binária, o algoritmo controla os índices maiores e menores que o item de destino pode ter na sequência. Inicialmente, esses limites (chamados min e max) são 0 e o maior índice da estrutura de dados. Para implementar uma função de busca binária é necessário seguir os seguintes passos: 1. while minimo <= maximo: 2. if valor < lista[meio]: 3. meio = (minimo + maximo) // 24. else: 5. maximo = meio - 16. minimo = meio + 17. elif valor > lista[meio]: 8. return True 9. return False 10. minimo, maximo = 0, len(lista) - 1 Assinale a alternativa que apresenta a sequência correta. Sua resposta 10 - 1 - 3 - 2 - 5 - 7 - 6 - 4 - 8 - 9 10 - 1 - 3 - 2 - 5 - 7 - 6 - 4 - 8 - 9 10. minimo, maximo = 0, len(lista) - 11. while minimo <= maximo: 3. meio = (minimo + maximo) // 22. if valor < lista[meio]: 5. maximo = meio - 17. elif valor > lista[meio]: 6. minimo = meio + 14. else: 8. return True 9. return False Questão 2Correta Algoritmos podem ser expressos em pseudocódigo. Pseudocódigo é um texto muito parecido com uma linguagem de programação, mas que não é realmente uma linguagem de programação. A ideia é fornecer a estrutura e os detalhes necessários para implementar o algoritmo no código sem vincular o algoritmo a uma linguagem de programação específica (STEPHENS, 2013). Para implementar uma função que faz a busca linear é preciso seguir os seguintes passos: 1. for elemento in lista: 2. if valor == elemento: 3. def executar_busca_linear(lista, valor): 4. return False 5. return True Assinale a alternativa que apresenta a sequência correta. Sua resposta 3 - 1 - 2 - 5 - 4 3 - 1 - 2 - 4 - 5 3. def executar_busca_linear(lista, valor): 1. for elemento in lista: 2. if valor == elemento: 5. return True 4. return False Questão 3 Correta Hoje em dia, somos inundados por dados. Estima-se que a quantidade de nova informação técnica dobre a cada dois anos, e mais de 1,5 hexabyte de informação nova foi gerada nesse ano. Isso é mais que o gerado durante o período de 5 mil anos antes de nascermos. Uma incrível quantidade de dados está prontamente disponível para nós na Internet e em outros locais. As pessoas capazes de analisar essas informações obterão bons empregos, o que será de valor inestimável em quase qualquer campo (LOCK, p. 4, 2017). Sobre a utilização da biblioteca pandas voltada para o trabalho com dados na linguagem Python, avalie as asserções a seguir. I. pandas possui duas estruturas de dados que são as principais para a análise/manipulação de dados: a Series e o DataFrame. II. Uma Series é um como uma matriz de dados, capaz de armazenar diferentes tipos de dados. III. Um DataFrame é conjunto de Series, ou como a documentação apresenta, um contêiner para Series Assinale a alternativa correta. Sua resposta Somente as asserções I e III estão corretas. Somente as asserções I e III estão corretas. II. Uma Series é um como um vetor de dados, capaz de armazenar diferentes tipos de dados. Questão 4Correta Existem várias maneiras de categorizar e pensar em diferentes tipos de visualizações. Uma maneira de classificar uma visualização de dados é contando quantas dimensões diferentes de dados ela representa. Ou seja, qual o número de tipos discretos de informação que são codificados visualmente em um gráfico. Por exemplo, um gráfico de linhas simples pode mostrar o preço das ações de uma empresa em dias diferentes: são duas dimensões de dados. Se várias empresas são mostradas (e, portanto, comparadas), agora existem três dimensões; se o volume de negociação por dia for adicionado ao gráfico, existem quatro. Essa contagem do número de dimensões de dados pode ser descrita como o nível de complexidade da visualização (ILIINSKY e STEELE, 2011). A Figura 1 apresenta um código para criação de gráficos em Python. Figura 1 - Código em Python Fonte: Elaborada pela autora. Sobre a biblioteca matplotlib, avalie as asserções a seguir. I. O comando na linha 6, cria uma figura com 1 linha e 2 colunas, ou seja, em cada eixo só podem ser plotados, no máximo, dois gráficos. II. O comando na linha 6, cria uma figura com 1 linha e 2 colunas, que serão acessados por meio do eixo "ax". Essa variável é um objeto da classe numpy.ndarray, ou seja é um vetor. III. O eixo "ax" criado pelo comando na linha 6, permite a plotagem de gráficos em posições específicas (linha e coluna), para isso, basta informar através do índice onde se deseja criar o gráfico. Escolha a opção correta. Sua resposta Somente as asserções II e III estão corretas correta Questão 5Correta Em um projeto, existe uma etapa que decide que estrutura de dados deveria ser usada para tornar a execução mais eficiente em relação a tempo e espaço. Um item especificado em termos de operações é chamado tipo abstrato de dados, que não é parte de um programa, já que um programa escrito em linguagem de programação exige a definição de uma estrutura de dados, não apenas das operações nesta estrutura (DROZDEK, p. 1, 2016). Sobre estruturas de dados em Python, avalie as asserções a seguir: I. Dada a tupla frutas = ("maça", "banana", "uva"), a função append() pode ser usada para adicionar uma nova fruta a estrutura. II. Dada a variável numeros = [2, 3], o comando map(lambda x: 2 x, numeros) retornará o resultado [4, 6] III. A função filter() tem as mesmas características da função map(), mas ao invés de usarmos uma função para transformar os valores da lista, usamos para filtrar. Escolha a opção correta. Sua resposta Somente a asserção III está correta. Somente a asserção III está correta. Corrigindo as demais tem-se: I. Dada a tupla frutas = ("maça", "banana", "uva"), a função append() não pode ser usada para adicionar uma nova fruta a estrutura, pois a tupla é imutável. II. Dada a variável numeros = [2, 3], o comando map(lambda x: 2 x, numeros) retornará um objeto iterável, portanto, para ver o resultado pode ser usado o construtor list() para transformar: list(map(lambda x: 2 x, numeros)). Questão 6Correta Todo algoritmo que se possa construir utilizará conjuntos de dados. Tais dados podem ser, basicamente, números e caracteres isolados ou, de algum modo, agrupados. Para que um algoritmo possa ser implementado em um computador, é preciso que exista um meio de armazenamento dos dados que serão manipulados. Assim, chega-se ao conceito existente em todas as linguagens de programação e que é usualmente designado pelo termo “variável” (BANIN, p. 26, 2018). Considerando a linguagem Python, analise as asserções a seguir: I. A função type() é usada para descobrir o tipo de um objeto. II. A variável x = 10, é do tipo primitivo integer. III. A variável y = 'oi' é do tipo primitivo string. Escolha a opção correta. Sua resposta Somente a asserção I está correta. Somente a asserção I está correta. (correta) I. A função type() é usada para descobrir o tipo de um objeto. (incorreta) II. A variável x = 10, é do tipo primitivo integer. A variável x = 10, é um objeto da classe int. (incorreta) III. A variável y = 'oi' é do tipo primitivo string. A variável y= 'oi' , é um objeto da classe str. Questão 7Correta Um banco de dados mal projetado requer mais tempo e retrabalho em longo prazo. Sem planejamento e análise cuidadosa, você pode criar um banco de dados que omita alguns dados exigidos ou que seja inconsistente em relação ao contexto de informações que ele deve refletir (MACHADO, p. 17, 2020). A Figura 1 apresenta um código que interage com um mecanismo de banco de dados relacional em Python. Figura 1 - Banco de dados em Python Fonte: Elaborada pela autora. Considerando o código da Figura 1, avalie as asserções a seguir. I. Ao final da execução do código, o registrocom nome "João" e idade "30", será adicionado a tabela cliente e poderá ser recuperado com uma instrução SELECT. II. A instrução SQL na query faz parte das instruções do grupo DDL. III. Segundo a PEP 249, uma instrução SQL deve ser executado por um método chamado execute() através de um objeto do tipo cursor. Assinale a alternativa correta. Sua resposta Somente a asserção III está correta. correta Questão 8Correta PEP 8 (Python Enhancement Proposal) é um documento que fornece convenções de codificação para o código Python que compreende a biblioteca padrão na distribuição principal do Python. I. Podemos imprimir uma mensagem para o usuário combinando texto e conteúdo da variável da seguinte forma: f"Olá {nome}, seja bem-vindo a linguagem Python." PORQUE II. Uma das formas que a linguagem Python aceita a interpolação de strings é por meio meio das f-strings, comentada na PEP 498. Escolha a opção correta. Sua resposta As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. Somente a asserção I está correta. (correta) I. A função type() é usada para descobrir o tipo de um objeto. (incorreta) II. A variável x = 10, é do tipo primitivo integer. A variável x = 10, é um objeto da classe int. (incorreta) III. A variável y = 'oi' é do tipo primitivo string. A variável y= 'oi' , é um objeto da classe str. Questão 9Correta Um algoritmo é uma receita para executar uma determinada tarefa. Uma estrutura de dados é uma maneira de organizar dados para facilitar a solução de um problema específico. Uma estrutura de dados pode ser uma maneira de organizar valores em uma matriz, uma lista vinculada que conecta itens em um determinado padrão, uma árvore, um gráfico, uma rede ou algo ainda mais exótico (STEPHENS, p. 12, 2013). Sobre os algoritmos de busca, avalie as asserções a seguir. I. Um algoritmo que faz a busca sequencial, ou seja, elemento após elemento é chamado de busca binária. II. Um algoritmo que faz a busca, sempre separando uma sequência em duas novas é chamado de busca sequencial. III. O algoritmo de busca binária tem um desempenho, em termos de tempo, superior ao da busca sequencial. Escolha a opção correta. Sua resposta Somente a asserção III está correta. Somente a asserção III está correta. Acertando as alternativas incorretas: I. Um algoritmo que faz a busca sequencial, ou seja, elemento após elemento é chamado de busca sequencial. II. Um algoritmo que faz a busca, sempre separando uma sequência em duas novas é chamado de busca binária. Questão 10Correta Um módulo pode conter tanto instruções executáveis quanto definições de funções e classes. Essas instruções servem para inicializar o módulo. Eles são executados somente na primeira vez que o módulo é encontrado em uma instrução de importação (PSF, 2020). A Figura 1, apresenta a implementação com módulo em Python. Figura 1 - Implementação em Python Fonte: Elaborada pela autora. Sobre o código na Figura 1, avalie as asserções a seguir: I. O arquivo de nome principal.py é um script executável se a variável __name__ tiver o valor __main__ II. create_ssh_client é uma função implementada em um módulo chamado import. III. Como o arquivo de nome principal.py possui o método main(), ele não pode ser usado como módulo em outro módulo. Escolha a opção correta Sua resposta Somente as asserções I e II estão corretas. correta
Compartilhar