Baixe o app para aproveitar ainda mais
Prévia do material em texto
Qual das seguintes opções não é uma vantagem de usar módulos? Fornece um meio de testar partes individuais do programa Fornece um meio de reutilização do código do programa Nenhuma das anteriores Proporciona um meio de reduzir o tamanho do programa Proporciona um meio de dividir tarefas Respondido em 01/06/2020 15:42:11 Explicação: O tamanho total do programa permanece o mesmo, independentemente de os módulos serem usados ou não. Módulos simplesmente dividem o programa. 2a Questão Qual das afirmações sobre os módulos é falsa? Na forma de importação "import", todos os identificadores, independentemente de serem privados ou públicos, são importados Quando um módulo é carregado, uma versão compilada do módulo com extensão de arquivo .pyc é automaticamente produzida Na forma de importação "import", os identificadores que começam com dois sublinhados são privados e não são importados a função interna dir () monitora os itens no namespace do módulo principal Quando um módulo é carregado, uma versão interpretada do módulo com extensão de arquivo .pyc é automaticamente produzida Respondido em 01/06/2020 15:42:23 Explicação: Na forma de importação "import", os identificadores que começam com dois sublinhados são privados e não são importados. 3a Questão Qual das seguintes afirmações é verdadeira sobre o processo de design top-down? Apenas os detalhes do programa são abordados Os detalhes de um projeto de programa são abordados antes do projeto geral Somente o desenho do programa é endereçado Nenhuma das anteriores O design geral do programa é abordado antes dos detalhes Respondido em 01/06/2020 15:42:23 Explicação: O projeto top-down é uma abordagem para derivar um design modular a partir do design geral. Qual das seguintes opções não é uma vantagem de usar módulos? Nenhuma das anteriores Proporciona um meio de reduzir o tamanho do programa Fornece um meio de testar partes individuais do programa Fornece um meio de reutilização do código do programa Proporciona um meio de dividir tarefas Respondido em 01/06/2020 15:46:44 Explicação: O tamanho total do programa permanece o mesmo, independentemente de os módulos serem usados ou não. Módulos simplesmente dividem o programa. 2a Questão Qual das afirmações sobre os módulos é falsa? Na forma de importação "import", todos os identificadores, independentemente de serem privados ou públicos, são importados Quando um módulo é carregado, uma versão compilada do módulo com extensão de arquivo .pyc é automaticamente produzida Na forma de importação "import", os identificadores que começam com dois sublinhados são privados e não são importados a função interna dir () monitora os itens no namespace do módulo principal Quando um módulo é carregado, uma versão interpretada do módulo com extensão de arquivo .pyc é automaticamente produzida Respondido em 01/06/2020 15:47:01 Explicação: Na forma de importação "import", os identificadores que começam com dois sublinhados são privados e não são importados. 3a Questão Qual das seguintes afirmações é verdadeira sobre o processo de design top-down? Apenas os detalhes do programa são abordados O design geral do programa é abordado antes dos detalhes Os detalhes de um projeto de programa são abordados antes do projeto geral Somente o desenho do programa é endereçado Nenhuma das anteriores Respondido em 01/06/2020 15:48:41 Explicação: O projeto top-down é uma abordagem para derivar um design modular a partir do design geral. Qual é a saída do seguinte código Python? i = 1 while True: if i%3 == 0: break print(i) i + = 1 Erro Loop infinito 1 2 1 1 2 3 Respondido em 01/06/2020 15:40:13 Explicação: O loop só será satisfeito quando o valor da variávei i for 3, situação que interrompe (break) o loop. 2a Questão Qual a saída do código abaixo? lista = [30, 10, 20, 50, 80] maior = lista[0] i = 0 while i < len(lista): if lista[i] < maior: maior = lista[i] i += 1 print('O número procurado é {}'.format(maior)) 80 50 20 30 10 Respondido em 01/06/2020 15:40:24 Explicação: A estrutura while percorre a lista procurando seu menor valor e armazenado-o na variável "maior" 3a Questão Assinale a opção que indica o comando Python que produz [-2, -4]. print (*range(-2, -6, -2)) print (*range(-2, -4, 2)) print (*range(0, -4, -2)) print (*range(-2, -4, -2)) print (*range(0, -6, 2)) Respondido em 01/06/2020 15:40:31 Explicação: A lista de -2 (inclusive) e -6 (exclusive) com intervalo de 2 unidades consiste nos valores -2 e -4 Qual é a saída do seguinte código Python? i = 1 while True: if i%3 == 0: break print(i) i + = 1 1 2 Loop infinito 1 2 3 Erro 1 Respondido em 01/06/2020 15:34:11 Explicação: O loop só será satisfeito quando o valor da variávei i for 3, situação que interrompe (break) o loop. 2a Questão Assinale a opção que indica o comando Python que produz [-2, -4]. print (*range(0, -4, -2)) print (*range(-2, -4, 2)) print (*range(-2, -6, -2)) print (*range(-2, -4, -2)) print (*range(0, -6, 2)) Respondido em 01/06/2020 15:34:47 Explicação: A lista de -2 (inclusive) e -6 (exclusive) com intervalo de 2 unidades consiste nos valores -2 e -4 3a Questão Qual a saída do código abaixo? lista = [30, 10, 20, 50, 80] maior = lista[0] i = 0 while i < len(lista): if lista[i] < maior: maior = lista[i] i += 1 print('O número procurado é {}'.format(maior)) 30 20 10 80 50 Respondido em 01/06/2020 15:35:19 Explicação: A estrutura while percorre a lista procurando seu menor valor e armazenado-o na variável "maior" if False: print("Nissan") elif True: print("Ford") elif True: print("BMW") else: print("Audi") BMW Nissan Audi Mercedez Ford Respondido em 01/06/2020 15:23:55 Explicação: O Ford foi selecionado na primeira condição verdadeira 2a Questão Conforme definido, um programa é composto por uma sequência de comandos ou blocos, executados de forma linear de cima para baixo. Nos casos em que devemos escolher qual (is) blocos devem ser executados, utilizamos a estrutura se..então (ou if em Python), nas mais variadas combinações. Para casos onde temos uma quantidade considerável de comparações, a melhor estrutura a se utilizar é: NDA Seleção simples Seleção Composta Seleção Encadeada Todas as anteriores Respondido em 01/06/2020 15:24:16 Explicação: Esta é a mais indicada por questões de desempenho (menor número de comparações) 3a Questão A precedência de operadores é particulamente importante em estruturas condicionais. Assim, sequência correta de precedência segue a seguinte ordem: Parênteses mais internos, Operadores relacionais, Operadores aritméticos e Operadores lógicos Parênteses mais internos, Operadores relacionais, Operadores lógicos e Operadores aritméticos Parênteses mais internos, Operadores aritméticos, Operadores relacionais e Operadores lógicos Parênteses mais internos, Operadores aritméticos, Operadores lógicos e Operadores relacionais Parênteses mais internos, Operadores lógicos, Operadores relacionais e Operadores aritméticos Respondido em 01/06/2020 15:24:49 Explicação: Conforme abordado no tópico "OperadoresAritméticos, Relacionais e Lógicos", a sequência correta segue os parênteses mais internos; depois os aritméticos; após os relacionais e, por último, os lógicos. Conforme definido, um programa é composto por uma sequência de comandos ou blocos, executados de forma linear de cima para baixo. Nos casos em que devemos escolher qual (is) blocos devem ser executados, utilizamos a estrutura se..então (ou if em Python), nas mais variadas combinações. Para casos onde temos uma quantidade considerável de comparações, a melhor estrutura a se utilizar é: Seleção simples Seleção Encadeada Todas as anteriores Seleção Composta NDA Respondido em 01/06/2020 15:27:03 Explicação: Esta é a mais indicada por questões de desempenho (menor número de comparações) 2a Questão A precedência de operadores é particulamente importante em estruturas condicionais. Assim, sequência correta de precedência segue a seguinte ordem: Parênteses mais internos, Operadores relacionais, Operadores lógicos e Operadores aritméticos Parênteses mais internos, Operadores aritméticos, Operadores relacionais e Operadores lógicos Parênteses mais internos, Operadores relacionais, Operadores aritméticos e Operadores lógicos Parênteses mais internos, Operadores aritméticos, Operadores lógicos e Operadores relacionais Parênteses mais internos, Operadores lógicos, Operadores relacionais e Operadores aritméticos Respondido em 01/06/2020 15:27:46 Explicação: Conforme abordado no tópico "Operadores Aritméticos, Relacionais e Lógicos", a sequência correta segue os parênteses mais internos; depois os aritméticos; após os relacionais e, por último, os lógicos. 3a Questão if False: print("Nissan") elif True: print("Ford") elif True: print("BMW") else: print("Audi") Nissan Ford Mercedez Audi BMW Respondido em 01/06/2020 15:28:12 Explicação: O Ford foi selecionado na primeira condição verdadeira Observe as assertivas a seguir sobre estrutura sequencial. 1. No Python, uma decisão pode ser feita usando if else statement. 2. Verificar várias condições no Python requer instruções elseif. 3. Se a condição for avaliada como verdadeira, a (s) instrução (ões) do bloco if será executada, caso contrário, a (s) instrução (ões) em outro bloco (se houver outra especificada) será executada. 4. A estrutura switch.case no Python existe, podendo ser representada pelo comando if. São incorretas as alternativas: 1 e 2 1 e 3 3 e 4 2 e 4 Todas as alternativas Respondido em 31/03/2020 07:22:16 Explicação: Verificar várias condições no Python requer instruções elif, e não elseif como no item 2. A estrutura switch.case no Python não existe, diferente do que afirma a questão 4. 2a Questão Observe as assertivas a seguir sobre estrutura sequencial. 1. No Python, uma decisão pode ser feita usando if else statement. 2. Verificar várias condições no Python requer instruções elif. 3. Se a condição for avaliada como verdadeira, a (s) instrução (ões) do bloco if será executada, caso contrário, a (s) instrução (ões) em outro bloco (se houver outra especificada) será executada. 4. A estrutura switch.case no Python não existe, sendo assim representada pelo comando if. São corretas as alternativas: 1 e 3 Todas as alternativas 1 e 2 2 e 4 2 e 3 Respondido em 31/03/2020 07:23:35 Explicação: Todas são corretas, pois a estrutura if é responsável pela tomada de decisão em várias linguagens, assim como no Python. Estruturas encadeadas são compostas pelo comando elif. 3a Questão Qual será a saída do código abaixo? L = [10, 12, 14, 16] for item in range(1,4,2): print(L[item]) 10, 14 12, 14 12, 16 12 16 Respondido em 31/03/2020 07:24:59 Explicação: A saída será os elementos de ordem 1 e 3 da lista L dada 4a Questão Qual a saída do código abaixo? "int volume (int altura, int largura, int comprimento) {return altura * largura * comprimento;} main() {int a1 = 1, l1 = 2, c1 = 3, a2 = 4, c2 = 5, l2 = 6; int v1, v2; v1 = volume(a1, l1, c1); v2 = volume(a2, l2, c2); print("v1: %d\nv2: %d\n", v1, v2); }" 2 1 6 v1:6, v2:120 120 Respondido em 31/03/2020 07:26:24 Explicação: O módulo volume multipla as dimensões inseridas 5a Questão O Python permite que partes diferentes de um programa sejam definidas em arquivos diferentes, chamados de módulos. O Python também oferece vários módulos nativos, como o math (que contém várias funções matemáticas), o statistics (que inclui várias rotinas estatísticas), o sys para acessar funções do sistema, etc. Para utilizar as funções e classes definidas nesses módulos, qual comando devemos utilizar? import add inclusive include plus Respondido em 31/03/2020 07:27:15 Explicação: import permite incluir módulos externos 6a Questão def exemplo(valor): numero = valor * 2 if numero > 10: return numero valor = valor + 5 return valor print(exemplo(7)) Qual a saída do código anterior? 7 5 14 12 2 Respondido em 31/03/2020 07:27:51 Explicação: Antes do teste lógico "if", o valor do parametro enviado (7) é dobrado, fazendo com que o teste "if" seja verdadeiro, dobrando o valor de entrada O Python permite que partes diferentes de um programa sejam definidas em arquivos diferentes, chamados de módulos. O Python também oferece vários módulos nativos, como o math (que contém várias funções matemáticas), o statistics (que inclui várias rotinas estatísticas), o sys para acessar funções do sistema, etc. Para utilizar as funções e classes definidas nesses módulos, qual comando devemos utilizar? plus import inclusive add include Respondido em 31/05/2020 18:49:00 Explicação: import permite incluir módulos externos 2a Questão def exemplo(valor): numero = valor * 2 if numero > 10: return numero valor = valor + 5 return valor print(exemplo(7)) Qual a saída do código anterior? 5 14 12 2 7 Respondido em 31/05/2020 18:52:27 Explicação: Antes do teste lógico "if", o valor do parametro enviado (7) é dobrado, fazendo com que o teste "if" seja verdadeiro, dobrando o valor de entrada 3a Questão Qual será a saída do código abaixo? L = [10, 12, 14, 16] for item in range(1,4,2): print(L[item]) 12, 14 16 10, 14 12 12, 16 Respondido em 31/05/2020 18:55:57 Explicação: A saída será os elementos de ordem 1 e 3 da lista L dada Com base no código Python a seguir, qual será a saída produzida pelo algoritmo? U N E S A U N U S A E S A S A Respondido em 28/03/2020 20:43:46 Explicação: A única condição correta e a da linha 9. 2a Questão Qual é a saída do seguinte código? print("abc DEF".capitalize()) Abc def ABC DEF Não será exibida nenhuma mensagem, pois o código está errado. abc def Abc Def Respondido em 28/03/2020 20:47:14 Explicação: capitalize aplica a caixa alta somente para o primeiro caracter 3a Questão Observe o código Python a seguir e informe o número de comparações realizadas. O algoritmo imprime a mensagem da situação escolar de uma aluno, com os segintes status: aprovado com nota 7 ou maior; entre 4 e 6,9 Final e menor do que 4 o aluno é reprovado. 1 2 3 4 NDA Respondido em 28/03/2020 20:52:30 Explicação: Da maneira como está, o algoritmo irá realizar as comparações para cada estruturacondicional if. 4a Questão Quais os resultados retornados pelos comandos 1. math.ceil(3.4) 2. math.floor(3.4) 3. print(math.fabs(-3.4)) 4, 3 e 0 4, 3 e 3.4 3, 3 e 3.4 Nenhuma das anteriores 3, 3 e 0 Respondido em 28/03/2020 21:04:18 Explicação: Ceil arredonda pra cima. Round trunca o número. fabs é o número absoluto (sem sinal) 5a Questão Analise as assertivas sobre as funções em Python: I. o resultado da expressão k = 2 + 3l é um número complexo. II. o resultado de round(0.5) - round(-0.5) é 2. III. considerando x = 8/3, o resultado de floor(Fraction(x)) é igual ao round(Fraction(x)). São corretas as alternativas: II e III I e II Somente I I e III Nenhuma das anteriores Respondido em 28/03/2020 21:04:44 Explicação: O item I é um número complexo. O item II o resultado da expressão é 0. O item III, o resultado de floor é 2, ao passo que o round é 3. 6a Questão Analise as assertivas sobre as funções em Python: 1. o resultado da expressão k = 2 + 3l não é um número complexo. 2. o resultado de round(0.5) - round(-0.5) é 2. 3. considerando x = 8/3, o resultado de floor(Fraction(x)) é igual ao round(Fraction(x)). São incorretas as alternativas: Somente 1 Todas as alternativas 1 e 3 2 e 3 1 e 2 Respondido em 28/03/2020 21:06:20 Explicação: O item I é um número complexo. O item II o resultado da expressão é 0. O item III, o resultado de floor é 2, ao passo que o round é 3. 7a Questão Qual das seguintes funções é uma função interna (built-in) no Python? print() Nenhuma das anteriores factorial() seed() sqrt() Respondido em 28/03/2020 21:07:02 Explicação: A função seed é uma função que está presente no módulo randomo. As funções sqrt e fatorial fazem parte do módulo math. A função de impressão é uma função interna que imprime um valor diretamente na saída do sistema. Qual das seguintes funções é uma função interna (built-in) no Python? print() Nenhuma das anteriores seed() sqrt() factorial() Respondido em 30/05/2020 21:13:16 Explicação: A função seed é uma função que está presente no módulo randomo. As funções sqrt e fatorial fazem parte do módulo math. A função de impressão é uma função interna que imprime um valor diretamente na saída do sistema. 2a Questão Quais os resultados retornados pelos comandos 1. math.ceil(3.4) 2. math.floor(3.4) 3. print(math.fabs(-3.4)) 4, 3 e 0 3, 3 e 3.4 4, 3 e 3.4 Nenhuma das anteriores 3, 3 e 0 Respondido em 30/05/2020 21:14:56 Explicação: Ceil arredonda pra cima. Round trunca o número. fabs é o número absoluto (sem sinal) 3a Questão Analise as assertivas sobre as funções em Python: I. o resultado da expressão k = 2 + 3l é um número complexo. II. o resultado de round(0.5) - round(-0.5) é 2. III. considerando x = 8/3, o resultado de floor(Fraction(x)) é igual ao round(Fraction(x)). São corretas as alternativas: Nenhuma das anteriores II e III I e II I e III Somente I Respondido em 30/05/2020 21:17:21 Explicação: O item I é um número complexo. O item II o resultado da expressão é 0. O item III, o resultado de floor é 2, ao passo que o round é 3. 4a Questão Qual é a saída do seguinte código? print("abc DEF".capitalize()) ABC DEF Não será exibida nenhuma mensagem, pois o código está errado. Abc def abc def Abc Def Respondido em 30/05/2020 21:23:04 Explicação: capitalize aplica a caixa alta somente para o primeiro caracter Considere o código abaixo, digitado em Python. a, b = 0, 1 while b < 10: print b a, b = b, a+b No final da execução do código, o último valor armazenado nas variáveis a e b serão, respectivamente, 13 e 21 8 e 10. 8 e 13 5 e 10. 13 e 20. Respondido em 28/03/2020 15:46:08 Explicação: Implemetação do cálculo da série de Fibonacci em python 2a Questão O conjunto correto de palavras reservadas para a construção de uma estrutura de controle em Python 3.4.3 é: Somente if; o restante da estrutura de controle (¿senão se¿ e ¿senão¿) é realizado simplesmente com indentação. if, elseif e else if, else if e else if, elif e else if, elsif e else Respondido em 28/03/2020 15:46:59 Explicação: if, elif e else são as palavras reservadas em python para a estrutura de decisão "se" 3a Questão Analise o código Python a seguir. Assinale a opção que descreve corretamente o que acontece quando esse programa é executado no Python Exibe [10, 20, 30, 40, 50] Exibe [10, 20, 30, [40, 50]] Produz uma mensagem de erro, porque tenta executar uma operação inválida Exibe [10, 20, 30], [40, 50] Exibe [] Respondido em 28/03/2020 15:49:07 Explicação: A função append irá tratar a lista L2 como elemento a ser adicionado à lista L1 4a Questão Considere o código fonte Python abaixo. Para que seja exibido [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] a lacuna ___I___ precisa ser preenchida corretamente com: resultado.add(a) a, b = b, a+b resultado.insert(a) a, b = b, a+b resultado.append(a) a, b = b, a+b resultado.append(a) a, b = a+b, b resultado.add(a) a, b = a, a+b Respondido em 28/03/2020 15:50:08 Explicação: A função "append" adiciona elementos a uma lista existente 5a Questão Dado o código abaixo "populacaoA = 80000 crescimentoA = t populacaoB = 200000 crescimentoB = 1.015 ano = 1 while (populacaoA <= populacaoB): populacaoA *= crescimentoA populacaoB *= crescimentoB ano += 1 # Imprime o resultado print 'Serao necessarios', ano, 'anos para que a populacao do pais A'\ ' ultrapasse a populacao do pais B' " Para que valor de "t" tem-se um loop infinito? 1.05 1.03 1.04 1.02 1.01 Respondido em 28/03/2020 15:51:26 Explicação: Se crescimentoA for inferior a crescimentoB, a populaçãoA nunca irá superar a populacaoB 6a Questão Analise o trecho de programa Python apresentado a seguir. Ao ser executado, o resultado exibido é: [8, 7, 6, 5, 4, 3, 2, 1] [1] [1, 2, 3, 4, 5, 6, 7, 8] [ ] [8] Respondido em 28/03/2020 15:52:10 Explicação: O comando [::-1] irá inverter a ordem da lista na impressão Analise o trecho de programa Python apresentado a seguir. Ao ser executado, o resultado exibido é: [ ] [8, 7, 6, 5, 4, 3, 2, 1] [1, 2, 3, 4, 5, 6, 7, 8] [1] [8] Respondido em 30/05/2020 20:16:44 Explicação: O comando [::-1] irá inverter a ordem da lista na impressão 2a Questão O conjunto correto de palavras reservadas para a construção de uma estrutura de controle em Python 3.4.3 é: Somente if; o restante da estrutura de controle (¿senão se¿ e ¿senão¿) é realizado simplesmente com indentação. if, elif e else if, elsif e else if, else if e else if, elseif e else Respondido em 30/05/2020 20:19:28 Explicação: if, elif e else são as palavras reservadas em python para a estrutura de decisão "se" 3a Questão Dado o código abaixo "populacaoA = 80000 crescimentoA = t populacaoB = 200000 crescimentoB = 1.015 ano = 1 while (populacaoA <= populacaoB): populacaoA *= crescimentoA populacaoB *= crescimentoB ano += 1 # Imprime o resultado print 'Serao necessarios', ano, 'anos para que a populacao do pais A'\ ' ultrapasse a populacao do pais B' " Para que valor de"t" tem-se um loop infinito? 1.01 1.03 1.04 1.05 1.02 Respondido em 30/05/2020 20:22:29 Explicação: Se crescimentoA for inferior a crescimentoB, a populaçãoA nunca irá superar a populacaoB O que é um pseudocódigo? É considerada uma linguagem, baseada na convenção adotada por uma equipe de desenvolvimento de software. Não é considerada uma linguagem, mas um estilo de representação baseada na convenção adotada por uma equipe de desenvolvimento de software. Linguagem de programação simplificada, que não é uma linguagem específica Linguagem de programação simples, ligada a uma linguagem específica Linguagem de programação complicada Respondido em 28/03/2020 11:59:11 Explicação: Considerada uma forma intermediária entre o design e a codificação para a linguagem de programação, o pseudocódigo é uma forma universal de representar algoritmos independentemente da linguagem a ser utilizada 2a Questão A multiplicação (M) de dois números positivos maiores ou iguais a zero (A e B), realizada através de operações de somas, foi implementado da seguinte forma: 1: M := 0; 2: ENQUANTO (A≠0) FAÇA 3: M := M + A; 4: A := A - 1; 5: FIM-ENQUANTO O algoritmo, conforme implementado, não realiza a multiplicação. Assinale a alternativa abaixo que melhor identifica o erro de lógica do algoritmo. Nas linhas 2 e 3 Apenas na linha 3 Nas linhas 1 e 3 Apenas na linha 1 Nas linhas 3 e 4 Respondido em 28/03/2020 12:01:28 Explicação: A multiplicação será o resultado de "A" somas repetidas do valor "B", e não "A" somas repetidas do valor "A". Por isso, a linha 3 deveria ser M := M + B 3a Questão Considere o seguinte código em português estruturado: Qual o valor calculado pela função se o argumento n for igual a 5? 120 0 10 15 5 Respondido em 28/03/2020 12:06:32 Explicação: Algoritmo que irá calcular, através de recorrencia, o fatorial do argumento inicial informado 4a Questão Considere o fluxograma abaixo, desenvolvido com a finalidade de ordenar três valores A, B e C, contidos na memória. Entretanto o fluxograma contém uma falha de lógica, de forma que não resultem corretamente ordenados os três valores, para determinados valores de A, B e C. Dentre os valores de teste abaixo, qual alternativa NÃO apresenta corretamente classificados os valores A, B e C? A = 8; B = 3; C = 5 A = 3; B = 5; C = 8 A = 8; B = 5; C = 3 A = 3; B = 8; C = 5 A = 5; B = 3; C = 8 Respondido em 28/03/2020 12:12:31 Explicação: Na primeira verificação do fluxograma, A e B são colocados em ordem crescente (A < B). Após essa verificação, uma segunda verificação coloca B e C em ordem crescente (B < C), porém,, se na arrumação inicial, C for o menor dos 3 elementos, ele ficará na 2ª posição, pois o menor dos elementos B e C não é comparado ao elemento A. Na letra E, 8 e 5 trocam de lugar, ficando a sequencia 5 , 8 , 3. Na segunda verificação, 8 e 3 trocam de lugar, ficando a sequencia 5 , 3 , 8. Faltou uma terceira verificação entre os elementos 5 e 3 5a Questão Considere o trecho de código a seguir. Ao final da execução do trecho de código acima, os valores de X e J são iguais, respectivamente, a 8 e 12 6 e 12 9 e 12 8 e 9 7 e 11 Respondido em 28/03/2020 12:16:33 Explicação: A cada loop teremos os valores x = 2; 3; 4; 5; 6; 7 j = 1; 3 ; 5; 7; 9; 11 (quando o loop se encerra pelo não atendimento da condição de entrada) 6a Questão Observe as assertivas a seguir. Relacione as opções com os respectivos tipos de algoritmos. 1. É necessário aprender sua simbologia. Além disso, o algoritmo resultante não apresenta muitos detalhes, dificultando a sua transcrição para um programa. 2. Caracteriza-se pelo uso de conjunto de estruturas bem-definidas com a finalidade de minimizar a complexidade (isto é, a ambiguidade); 3. Apesar de fácil compreensão, suas características (abstração e imprecisão) fazem que ela seja pouco utilizada na prática. Narrativa, Fluxograma e Pseudocódigo Pseudocódigo, Narrativa e Fluxograma Fluxograma, Narrativa e Pseudocódigo Narrativa, Pseudocódigo e Fluxograma Fluxograma, Pseudocódigo e Narrativa Respondido em 28/03/2020 12:18:58 Explicação: Fluxograma: Consiste em analisar o enunciado do problema e escrever, por meio de símbolos gráficos predefinidos Pseudocódigo: Consiste em analisar o enunciado do problema e escrever, por meio de regras predefinidas, os passos a serem seguidos para a resolução do problema. Narrativa: linguagem natural abstrata, imprecisa e pouco confiável. Isso poderia trazer problemas na hora de transcrever o algoritmo para o programa (em uma linguagem de programação). Observe as assertivas a seguir. Relacione as opções com os respectivos tipos de algoritmos. 1. É necessário aprender sua simbologia. Além disso, o algoritmo resultante não apresenta muitos detalhes, dificultando a sua transcrição para um programa. 2. Caracteriza-se pelo uso de conjunto de estruturas bem-definidas com a finalidade de minimizar a complexidade (isto é, a ambiguidade); 3. Apesar de fácil compreensão, suas características (abstração e imprecisão) fazem que ela seja pouco utilizada na prática. Fluxograma, Pseudocódigo e Narrativa Pseudocódigo, Narrativa e Fluxograma Narrativa, Fluxograma e Pseudocódigo Narrativa, Pseudocódigo e Fluxograma Fluxograma, Narrativa e Pseudocódigo Respondido em 30/05/2020 18:11:07 Explicação: Fluxograma: Consiste em analisar o enunciado do problema e escrever, por meio de símbolos gráficos predefinidos Pseudocódigo: Consiste em analisar o enunciado do problema e escrever, por meio de regras predefinidas, os passos a serem seguidos para a resolução do problema. Narrativa: linguagem natural abstrata, imprecisa e pouco confiável. Isso poderia trazer problemas na hora de transcrever o algoritmo para o programa (em uma linguagem de programação). 2a Questão Para realizar o armazenamento de um determinado valor na memória do computador é necessária a declaração de: Comando de saída Comando de entrada Fluxograma Variável Estrutura de decisão Respondido em 30/05/2020 18:11:55 Explicação: Para realizar o armazenamento de um determinado valor na memória do computador é necessária a declaração de Variável. 3a Questão Considere o fluxograma abaixo, desenvolvido com a finalidade de ordenar três valores A, B e C, contidos na memória. Entretanto o fluxograma contém uma falha de lógica, de forma que não resultem corretamente ordenados os três valores, para determinados valores de A, B e C. Dentre os valores de teste abaixo, qual alternativa NÃO apresenta corretamente classificados os valores A, B e C? A = 8; B = 3; C = 5 A = 8; B = 5; C = 3 A = 3; B = 8; C = 5 A = 3; B = 5; C = 8 A = 5; B = 3; C = 8 Respondido em 30/05/2020 18:21:45 Explicação: Na primeira verificação do fluxograma, A e B são colocados em ordem crescente (A < B). Após essa verificação, uma segunda verificação coloca B e C em ordem crescente (B < C), porém,, se na arrumação inicial, C for o menor dos 3 elementos, ele ficará na 2ª posição, pois o menor dos elementos B e C não é comparado ao elemento A. Na letra E, 8 e 5 trocam de lugar, ficando a sequencia 5 , 8 , 3. Na segunda verificação, 8 e 3 trocam de lugar, ficando a sequencia 5 , 3 , 8. Faltou uma terceira verificação entre os elementos 5 e 3 4a Questão Considere o trecho de código a seguir. Ao final da execução do trecho de código acima, os valores de X e J são iguais, respectivamente, a 8 e 12 7 e 11 6 e 12 8 e 99 e 12 Respondido em 30/05/2020 18:24:24 Explicação: A cada loop teremos os valores x = 2; 3; 4; 5; 6; 7 j = 1; 3 ; 5; 7; 9; 11 (quando o loop se encerra pelo não atendimento da condição de entrada) Parte de um computador que permite ao usuário colocar informações no computador Dispositivo de saída Unidade de disco Sistema operacional Dispositivos de entrdada Placa-mãe Respondido em 28/03/2020 11:54:28 Explicação: Os dispositivos de entrada permitem a inserção de dados no sistema. São exemplos, teclado, mouse, telas touch-screen, etc. 2a Questão Consiste em entender os problemas que estão se desenvolvendo, os dados são informados sobre o que está acontecendo (entrada) e a solução de informação que espera por atenção (saída). Processo Algoritmo Solução Diagrama Fluxograma Respondido em 28/03/2020 11:55:34 Explicação: De forma geral, o conceito de algoritmo pode ser descrito como um conjunto de regras para a solução de um problema. Essa definição generalista pode ser aplicada a qualquer circunstância que exige a descrição da solução. 3a Questão A motivação para o desenvolvimento de softwares parte de alguma necessidade humana, como um sistema para controlar estoque, gerenciar informações de saúde etc. A construção é baseada na necessidade dos clientes, a partir de informações dadas sobre o que software deve conter e realizar. Essas especificações são geralmente chamadas de requisitos. Traduzidos em especificações técnicas de software, os requisitos dos clientes servem de base para o desenvolvimento do programa. Tipicamente essa tarefa é dividida em etapas, segundo tradicionalmente a seguinte ordem: Análise > Projeto > Implementação > Testes Análise > Projeto > Testes > Implementação Projeto > Análise > Implementação > Testes Depende da metodologia adotada Projeto > Análise > Testes > Implementação Respondido em 28/03/2020 11:56:43 Explicação: Tradicionalmente, o processo de desenvolvimento de software segue o fluxo análise>projeto> implementação>testes. No entanto, existem novas abordagens em que as duas últimas etapas são trocadas. 4a Questão Quais são os quatro componentes estruturais principais que os computadores modernos devem conter? Codificação, Decodificação, Processamento Paralelo e Pipeline Todos os anteriores CPU (contendo ULA e UC), Memória principal, E/S e Interconexão do sistema. Palavra, Sistema Operacional, Tradutor e Interpretador Código Binário, Tabela ASCII, Teorema de De Morgan e Mapa de Karnnaugh. Respondido em 28/03/2020 11:57:26 Explicação: Apesar da relevância de todos, todos operam sob a CPU, MP, E/S e a interconexão do sistema. 5a Questão O cérebro do computador. Esta parte faz o cálculo, movimentação e processamento de informações Internet CPU Disco rígido RAM Rede Respondido em 28/03/2020 11:57:44 Explicação: Unidade responsável pela execução de programas armazenados na memória principal. Exerce funções executivas e de controle sobre os dados. 6a Questão Quantas unidades/componentes tem a arquitetura de Vo Neumann? 6 3 5 2 4 Respondido em 28/03/2020 11:57:57 Explicação: Com base na arquitetura proposta por von Neumann, podemos classificar as partes que compõem o computador em três amplas categorias: a unidade central de processamento (UCP), a memória principal e o subsistema de entrada e saída. Os comentários são recursos que podem ser utilizados pelos programadores para: Inserir comandos que serão executados pela máquina. Inserir diretivas para o compilador. Inserir comandos que serão traduzidos pelo compilador. Inserir textos explicativos apenas para o usuário . Inserir textos explicativos apenas para o programador. Respondido em 30/05/2020 15:24:12 Explicação: Os comentários são recursos que podem ser utilizados pelos programadores para inserir textos explicativos apenas para o programador. 2a Questão Consiste em entender os problemas que estão se desenvolvendo, os dados são informados sobre o que está acontecendo (entrada) e a solução de informação que espera por atenção (saída). Diagrama Processo Algoritmo Fluxograma Solução Respondido em 30/05/2020 15:25:16 Explicação: De forma geral, o conceito de algoritmo pode ser descrito como um conjunto de regras para a solução de um problema. Essa definição generalista pode ser aplicada a qualquer circunstância que exige a descrição da solução. 3a Questão Quais são os quatro componentes estruturais principais que os computadores modernos devem conter? Código Binário, Tabela ASCII, Teorema de De Morgan e Mapa de Karnnaugh. Palavra, Sistema Operacional, Tradutor e Interpretador Codificação, Decodificação, Processamento Paralelo e Pipeline Todos os anteriores CPU (contendo ULA e UC), Memória principal, E/S e Interconexão do sistema. Respondido em 30/05/2020 15:26:16 Explicação: Apesar da relevância de todos, todos operam sob a CPU, MP, E/S e a interconexão do sistema. 4a Questão Quantas unidades/componentes tem a arquitetura de Vo Neumann? 3 2 6 4 5 Respondido em 30/05/2020 15:27:06 Explicação: Com base na arquitetura proposta por von Neumann, podemos classificar as partes que compõem o computador em três amplas categorias: a unidade central de processamento (UCP), a memória principal e o subsistema de entrada e saída. Qual das seguintes estruturas de dados pode ser usada com o operador "in" para verificar se um item está na estrutura de dados? Somente Dictionary Somente List Somente Set List, set e dictionary Somente set e dictionary Explicação: O operador "in" pode ser usado com todas essas três estruturas de dados. 2. Qual a saída do seguinte código em Python? def f(value, values): v = 1 values[0] = 44 t = 3 v = [1, 2, 3] f(t, v) print(t, v[0]) 3 44 1 1 3 1 3 3 1 44 Explicação: O valor de t foi estipulado em 0. O valor da estrutura list na posição 0 foi alterado para 44 pela função. 3. Qual a saída do código Python a seguir? r = [11, 12, 13, 14, 15, 16, 17, 18, 19] A = [[0, 10, 20], [30, 40, 50], [60, 70, 80]] for row in A: for col in row: r.append(col+10) print(r) [10, 20, 30, 40, 50, 60, 70, 80, 90] [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100] [11, 12, 13, 14, 15, 16, 17, 18, 19] [0, 10, 20, 30, 40, 50, 60, 70, 80] [11, 12, 13, 14, 15, 16, 17, 18, 19, 10, 20, 30, 40, 50, 60, 70, 80, 90] Explicação: O código mostrado acima adiciona 10 a cada elemento da matriz e imprime a saída em linha. Como a lista l já contém alguns elementos, os novos elementos são anexados a ela. Assim, a saída deste código é: [11, 12, 13, 14, 15, 16, 17, 18, 19, 10, 20, 30, 40, 50, 60, 70, 80, 90]. Não Respondida Não Gravada Gravada Exercício inciado em 01/06/2020 20:59:52. Qual das seguintes estruturas de dados pode ser usada com o operador "in" para verificar se um item está na estrutura de dados? List, set e dictionary Somente Dictionary Somente set e dictionary Somente List Somente Set Explicação: O operador "in" pode ser usado com todas essas três estruturas de dados. 2. Qual a saída do seguinte código em Python? def f(value, values): v = 1 values[0] = 44 t =3 v = [1, 2, 3] f(t, v) print(t, v[0]) 1 1 3 1 3 3 1 44 3 44 Explicação: O valor de t foi estipulado em 0. O valor da estrutura list na posição 0 foi alterado para 44 pela função. 3. Qual a saída do código Python a seguir? r = [11, 12, 13, 14, 15, 16, 17, 18, 19] A = [[0, 10, 20], [30, 40, 50], [60, 70, 80]] for row in A: for col in row: r.append(col+10) print(r) [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100] [0, 10, 20, 30, 40, 50, 60, 70, 80] [10, 20, 30, 40, 50, 60, 70, 80, 90] [11, 12, 13, 14, 15, 16, 17, 18, 19, 10, 20, 30, 40, 50, 60, 70, 80, 90] [11, 12, 13, 14, 15, 16, 17, 18, 19] Explicação: O código mostrado acima adiciona 10 a cada elemento da matriz e imprime a saída em linha. Como a lista l já contém alguns elementos, os novos elementos são anexados a ela. Assim, a saída deste código é: [11, 12, 13, 14, 15, 16, 17, 18, 19, 10, 20, 30, 40, 50, 60, 70, 80, 90]. Não Respondida Não Gravada Gravada Qual dos seguintes pontos é falso sobre a estrutura de dados lista ligada quando é comparada com a array? Arrays têm melhor localidade de cache que pode torná-los melhores em termos de desempenho. As listas vinculadas normalmente não aceitam acesso aleatório É fácil inserir e excluir elementos na Lista ligada O tamanho da matriz e das listas vinculadas podem mudar a qualquer momento. Acesso aleatório não é permitido em uma implementação típica de listas vinculadas Explicação: Arrays têm melhor localidade de cache que pode torná-los melhores em termos de desempenho; É fácil inserir e excluir elementos na Lista vinculada - só é preciso saber a localização de onde colocar consultando o cabeça; Acesso aleatório não é permitido em uma implementação típica de listas vinculadas; O tamanho da matriz deve ser pré-definido- são estáticas - , as listas vinculadas podem mudar seu tamanho a qualquer momento - são dinâmicas. 2. Qual o último elemento listado da pilha? def main(): seq = [11, 22, 33, 444] pilha = [] for elemento in seq: pilha.append(elemento) while len(pilha) > 0: print(pilha) topo = pilha.pop() print("objeto do topo: ", topo) main() 444 22 11 33 1 Explicação: O comando pop lista e retira os elementos da pilha do último para o primeiro, por fim, restando somente o 11 3. Considere as seguintes asserções: 1. Os tipos de computação FIFO são eficientemente suportados pelos PILHAS. 2. A implementação de LISTAS em listas vinculadas é mais eficiente do que implementar LISTAS em uma matriz para quase todas as operações básicas da LISTA. 3. A implementação de FILAS em um array circular é mais eficiente do que implementar FILAS em um array linear com dois índices. 4. O tipo de computação LIFO é eficientemente suportado por FILAS. Qual das seguintes opções está correta? 3 e 4 1 e 2 2 e 3 2 e 4 1 e 3 Explicação: Listas em uma matriz é um modo ineficiente de implementação, uma vez que as matrizes são estruturas estáticas. O uso de um array linear, por si só, já configura um modo ineficiente de acessar valores. Não Respondida Não Gravada Gravada Exercício inciado em 01/06/2020 21:03:54. Qual o último elemento listado da pilha? def main(): seq = [11, 22, 33, 444] pilha = [] for elemento in seq: pilha.append(elemento) while len(pilha) > 0: print(pilha) topo = pilha.pop() print("objeto do topo: ", topo) main() 11 33 22 1 444 Explicação: O comando pop lista e retira os elementos da pilha do último para o primeiro, por fim, restando somente o 11 2. Considere as seguintes asserções: 1. Os tipos de computação FIFO são eficientemente suportados pelos PILHAS. 2. A implementação de LISTAS em listas vinculadas é mais eficiente do que implementar LISTAS em uma matriz para quase todas as operações básicas da LISTA. 3. A implementação de FILAS em um array circular é mais eficiente do que implementar FILAS em um array linear com dois índices. 4. O tipo de computação LIFO é eficientemente suportado por FILAS. Qual das seguintes opções está correta? 2 e 4 1 e 2 3 e 4 1 e 3 2 e 3 Explicação: Listas em uma matriz é um modo ineficiente de implementação, uma vez que as matrizes são estruturas estáticas. O uso de um array linear, por si só, já configura um modo ineficiente de acessar valores. 3. Qual dos seguintes pontos é falso sobre a estrutura de dados lista ligada quando é comparada com a array? As listas vinculadas normalmente não aceitam acesso aleatório O tamanho da matriz e das listas vinculadas podem mudar a qualquer momento. É fácil inserir e excluir elementos na Lista ligada Acesso aleatório não é permitido em uma implementação típica de listas vinculadas Arrays têm melhor localidade de cache que pode torná-los melhores em termos de desempenho. Explicação: Arrays têm melhor localidade de cache que pode torná-los melhores em termos de desempenho; É fácil inserir e excluir elementos na Lista vinculada - só é preciso saber a localização de onde colocar consultando o cabeça; Acesso aleatório não é permitido em uma implementação típica de listas vinculadas; O tamanho da matriz deve ser pré-definido- são estáticas - , as listas vinculadas podem mudar seu tamanho a qualquer momento - são dinâmicas. Não Respondida Não Gravada Gravada Exercício inciado em 01/06/2020 21:06:04.
Compartilhar