Prévia do material em texto
Questão 1/10 - Lógica de Programação e Algoritmos (ADAPTADA) Na AULA 5 você aprendeu a conceituar funções em linguagem de programação. Sobre funções, observe as afirmações a seguir: I - Funções são rotinas de códigos que podem ser executadas quando tem seu nome invocado pelo programa. II - Exemplos de funções pré-definidas na linguagem Python são for, while e if. III - Funções tem como um de seus objetivos simplificar os códigos criados, auxiliando na abstração de recursos complexos de se manipular em programação, como drivers de vídeo e de teclado. Acerca das afirmativas apresentadas, assinale as CORRETAS: A I, apenas. B II, apenas. C III, apenas. D I e II, apenas. E I e III, apenas. Você assinalou essa alternativa (E) Questão 2/10 - Lógica de Programação e Algoritmos (ADAPTADA) Na AULA 4 aprendemos a construir laços de repetição empregando while e for. A seguir você encontra um código que não está sendo implementado com um laço. x = 5 print(x) x += 5 print(x) x += 5 print(x) x += 5 print(x) x += 5 print(x) Resultado na tela do console: 5 10 15 20 25 Assinale a alternativa que, CORRETAMENTE, resolve o mesmo problema e gera a mesma saída, mas agora empregando um laço de repetição do tipo while, em linguagem Python. A x = 5 while x <= 25: print(x) x += 5 Você assinalou essa alternativa (A) B x = 5 while x < 25: print(x) x += 5 C while x <= 25: print(x) x += 5 D while x < 25: print(x) x += 5 E while x <= 25: print(x) Questão 3/10 - Lógica de Programação e Algoritmos (ADAPTADA) Na AULA 4 você aprendeu a trabalhar com a estrutura de repetição while (enquanto). A seguir você encontra um código com o while que deveria apresentar na tela impresso todos os valores de 10 até 100. x = 10 while x <= 100: print(x) Porém, o código apresentado contém um problema. Assinale a alternativa que CORRETAMENTE explica qual o problema e a solução para ele. A O problema no código é que a variável de controle não está sendo iterada, gerando um loop infinito e fazendo com que o laço nunca se encerre. A solução para o problema é retirar a linha do print de dentro do while, colocando após o laço, e criando uma instrução dentro do laço para iterar a variável de controle. B O problema no código é que expressão lógica colocada no laço está incorreta. A solução para o problema é alterar a condição lógica do laço para x >= 100. C O problema no código é que a variável de controle não está sendo iterada, gerando um loop infinito e fazendo com que o laço nunca se encerre. A solução para o problema é alterar a condição lógica do laço para x >= 100. D O problema no código é que a variável de controle não está sendo iterada, gerando um loop infinito e fazendo com que o laço nunca se encerre. A solução para o problema é adicionar uma linha que incremente a variável de controle dentro do while. A linha deve ser inserida antes o print. E O problema no código é que a variável de controle não está sendo iterada, gerando um loop infinito e fazendo com que o laço nunca se encerre. A solução para o problema é adicionar uma linha que incremente a variável de controle dentro do while. A linha deve ser inserida após o print. Você assinalou essa alternativa (E) Questão 4/10 - Lógica de Programação e Algoritmos (ADAPTADA) Suponha que você precisa criar uma função que recebe alguns dados como parâmetro para um cadastro de pessoas: o nome da pessoa, o ano de nascimento, o salário (com valor padrão de R$ 1000) e o sexo (com valor padrão 'F'). Assinale a alternativa que contém a definição correta para esta função exemplificada em linguagem Python. A def cadastro(nome, ano, salario = , sexo = 0): B def cadastro(nome, ano, salario, sexo = 'F'): C def cadastro(nome, ano, salario = 1000, sexo = 'F'): Você assinalou essa alternativa (C) D def cadastro(nome, ano, salario, sexo): E def cadastro(nome, ano, salario = 1000, sexo): Questão 5/10 - Lógica de Programação e Algoritmos (ADAPTADA) Na AULA 6 aprendemos a manipular tuplas. Observe a tupla a seguir: numeros = (10, 15, 20, 25, 30) Assinale a alternativa que contém corretamente o print de todos os elementos desta tupla: A for numero in range (numeros): print(numero) B for numero in numeros: print(numero) Você assinalou essa alternativa (B) C for numero in numeros(): print(numero) D for numero in numeros: print(numero[i]) E for numero in range (0, numeros): print(numero) Questão 6/10 - Lógica de Programação e Algoritmos (ADAPTADA) Na AULA 5 aprendemos sobre o escopo de variáveis e também sobre passagem de parâmetros. Sobre este assunto, observe o código a seguir: def parangaricu(): palavra1 = 'parangaricu' tirimirruaro(palavra1) def tirimirruaro (palavra): palavra2 = palavra + 'tirimirruaro' #print(palavra2) parangaricu() #print(palavra2) No código apresentado o programa principal invoca uma função chamada 'parangaricu', sem parâmetros, que por sua vez invoca outra função de nome 'tirimirruaro', esta com um parâmetro. Observe que no código apresentado temos 2 linhas de print comentadas (linha 7 e linha 10). Supondo que somente uma das linhas seja habilitada no código por vez, assinale a alternativa que corretamente contém a saída do programa para cada um dos prints, e o motivo correto que gerou esta saída. A Linha 7. Saída: parangaricutirimirruaro. Linha 10. Saída: parangaricutirimirruaro. Justificativa: a variável 'palavra2' é local da função 'tirimirruaro', portanto só existe dentro desta função. Por este motivo, o print dentro de 'tirimirruaro' funcionou concatenando as strings. Já o print no programa principal também retorna a mesma resposta porque o print está sendo realizado no escopo global. B Linha 7. Saída: tirimirruaro. Linha 10. Saída: parangaricutirimirruaro. Justificativa: a variável 'palavra2' é local da função 'tirimirruaro', porém a variável 'palavra' é local de outra função, não sendo possível acessar seu valor dentro da função 'tirimirruaro'. Por este motivo, o print dentro de 'tirimirruaro' funcionou somente mostrando a parte acessível que é 'tirimirruaro'. Já o print no programa principal retorna a concatenação das strings porque está no escopo global. C Linha 7. Saída: parangaricutirimirruaro. Linha 10. Saída: Erro (NameError). Justificativa: a variável 'palavra2' é global do programa. Porém, como ela não recebeu nenhuma atribuição no escopo global, um erro acontece. D Linha 7. Saída: parangaricutirimirruaro. Linha 10. Saída: Erro (NameError). Justificativa: a variável 'palavra2' é local da função 'tirimirruaro', portanto só existe dentro desta função. Por este motivo, o print dentro de 'tirimirruaro' funcionou concatenando as strings. Já o print no programa principal não funcionou porque ele não conhece a variável do escopo local. Você assinalou essa alternativa (D) Questão 7/10 - Lógica de Programação e Algoritmos (ADAPTADA) Na AULA 5 você aprendeu a criar funções e também a realizar a passagem de parâmetros em funções. Acerca deste assunto, analise as afirmativas a seguir: I - Parâmetros são dados recebidos pelas funções e oriundos do programa principal ou mesmo de outra função. II - O ato de enviar um dado para um função é chamado de passagem de parâmetro. III - Um função só pode receber um único parâmetro. Acerca das afirmativas mostradas, assinale somente as CORRETAS: A I, apenas. B II, apenas. C III, apenas. D I e II, apenas. Você assinalou essa alternativa (D) E I e III, apenas. Questão 8/10 - Lógica de Programação e Algoritmos (ADAPTADA) Na AULA 6 aprendemos diversos métodos para manipulação de listas. Observe as seguintes frases: 1 - Insere na lista em um índice indicado. 2 - Deleta um elemento da lista no índice indicado.3 - Insere no final da lista. 4 - Deleta um elemento da lista buscando-o pelo nome. Assinale a alternativa que contem CORRETAMENTE o nome dos métodos que realizam o que foi explicitado nas frases: A 1 - insert 2 - remove 3 - append 4 - del B 1 - insert 2 - del 3 - append 4 - remove Você assinalou essa alternativa (B) C 1 - append 2 - del 3 - insert 4 - remove D 1 - append 2 - remove 3 - insert 4 - del Questão 9/10 - Lógica de Programação e Algoritmos (ADAPTADA) Na AULA 4 aprendemos a trabalhar com as instruções de break e continue dentro dos laços de repetição. Sobre este assunto, analise as afirmativas a seguir: I - A instrução continue é capaz de fazer com que o laço de repetição garanta que a próxima iteração irá acontecer, pois ele ignora o próximo teste lógico do loop. II - A instrução break é capaz de fazer o loop retornar ao seu inicio, recomeçando o laço. III - É permitido combinarmos estruturas de break e continue dentro de um mesmo laço de repetição Acerca das afirmativas apresentadas, assinale somente as CORRETAS: A I, apenas. B II, apenas. C III, apenas. Você assinalou essa alternativa (C) D I e III, apenas. E II e III, apenas. Questão 10/10 - Lógica de Programação e Algoritmos Na estrutura de repetição while (enquanto), a execução de uma ou mais instruções de um bloco, ou laço, depende de uma condição de controle verificada no início, ou na entrada, do laço. Enquanto o resultado da condição se mantiver verdadeiro, o bloco de instruções é executado, caso contrário, ocorre o desvio para a primeira linha após este bloco. A figura a seguir mostra o fluxograma de uma estrutura de repetição while (enquanto). Observe as afirmativas abaixo: I. Na estrutura de repetição while (enquanto) a expressão booleana é verificada antes da execução da primeira da instrução dentro do bloco. II. Na estrutura de repetição while (enquanto), se a expressão booleana resultar em FALSO as instruções que estão dentro do bloco não são executadas. III. Na estrutura de repetição while (enquanto), se a condição de execução for falsa em algum momento, o laço é interrompido para que o resto do algoritmo entre em execução. IV. Na estrutura de repetição while (enquanto), se o resultado da condição for VERDADEIRO, as instruções são executadas e em seguida a condição será testada novamente. V. A estrutura de repetição while (enquanto) implementa uma variável contadora implicitamente dentro de sua estrutura. Acerca da estrutura while (enquanto), assinale somente as CORRETAS: A I, III, IV e V, apenas. B I, II, IV e V, apenas. C I, II e III, apenas. D I, II, III e IV, apenas. Você assinalou essa alternativa (D) E I, II, III, IV e V.