Baixe o app para aproveitar ainda mais
Prévia do material em texto
Acadêmico: Rafael Duarte dos Santos (1175759) Disciplina: Lógica e Técnicas de Programação (ADS05) Avaliação: Avaliação Final (Objetiva) - Individual FLEX ( Cod.:651192) ( peso.:3,00) Prova: 25500726 Nota da Prova: 9,00 Legenda: Resposta Certa Sua Resposta Errada 1. Na análise e desenvolvimento de sistemas se utiliza várias formas para representar uma solução algorítmica. Surgindo a necessidade de se construir um algoritmo, deve-se escolher a solução que se adéqua melhor à necessidade do problema e a que seja de maior domínio por parte do analista de sistemas. É possível utilizar formas que abstraem detalhes de implementação e outras formas que possuem maior riqueza de detalhes na especificação algorítmica. Classifique V para as sentenças verdadeiras e F para as falsas: ( ) Ao desenvolver um algoritmo por meio de um fluxograma, é necessário conhecimento prévio da linguagem de programação a ser utilizada no processo de codificação. ( ) Os algoritmos desenvolvidos com linguagens de programação não precisam ser testados. ( ) Os fluxogramas são utilizados pelos profissionais de análise de sistemas para programar soluções computacionais capazes de serem executadas pelos computadores. ( ) Uma das limitações da descrição narrativa é a imprecisão do entendimento, em razão do duplo entendimento possível na linguagem textual. Assinale a alternativa que apresenta a sequência CORRETA: a) V - V - V - F. b) F - F - V - V. c) F - V - F - V. d) F - F - F - V. 2. Os algoritmos podem ser representados de diferentes formas, a variação entre elas está relacionada ao nível de detalhe ou ao grau de abstração oferecido por cada uma. Algumas formas têm foco no nível lógico, de forma a abstrair detalhes de implementação. No entanto, algumas formas de representação possuem maior riqueza de detalhes. O que é a descrição narrativa? a) É a construção de algoritmos com diagramas de chapin. b) É a construção de algoritmos em linguagem natural. c) É a construção de algoritmos em linguagem computacional. d) É a construção de algoritmos com representações gráficas. Rafael Duarte Rafael Duarte 3. Uma sequência finita de comandos clara e sem dupla interpretação, são características dos algoritmos, além da necessidade de determinar um estado de parada para a sua execução. Os algoritmos precisam processar muitas informações, e, para isso, as estruturas de repetição são peças fundamentais para executar laços de repetição que permitem trabalhar com a mesma informação várias vezes ou executar uma sequência de passos lógicos repetidamente. Analise o algoritmo e as sentenças a seguir: 01 algoritmo "contador" 02 var 03 contador : inteiro 04 inicio 05 enquanto contador <= 10 faca 06 escreval (contador) 07 contador <- contador + 1 08 fimenquanto 09 fimalgoritmo I- A estrutura de repetição que possui a expressão de teste na linha 05 executará os comandos da linha 06 e 07 por 10 vezes. II- O operador de comparação utilizado na linha 05 verifica se a variável à sua esquerda é menor ou igual ao valor 10. III- Na linha 07, o valor armazenado na variável "contador" é atualizado com o próprio valor mais 1. IV- Ao alterar o valor "1" da linha 07 para o valor "2", o laço será repetido 5 vezes. Assinale a alternativa CORRETA: a) As sentenças I e II estão corretas. b) As sentenças II e IV estão corretas. c) As sentenças I e IV estão corretas. d) As sentenças II e III estão corretas. 4. As linguagens de programação permitem que as estruturas de controle condicionais executem um bloco de instruções caso a condicional declarada no início da estrutura não seja atendida, esse bloco é chamado de "senão". Analise o algoritmo e as sentenças a seguir: 01 algoritmo "consultaanobissexto" 02 var 03 ano: inteiro 04 inicio 05 escreval ("Digite um ano: ") 06 leia (ano) 07 08 se ((ano mod 4 = 0) e (ano mod 100 <> 0)) ou (ano mod 400 = 0) entao 09 escreval ("O ano: ",ano," é bissexto") 10 senao 11 escreval ("O ano: ",ano," não é bissexto") 12 fimse 13 fimalgoritmo I- Caso o usuário informe o ano 2012, o resultado será "O ano: 2012 não é bissexto". II- O comando " mod ", presente na linha 08, retorna o resto da divisão matemática. III- Caso sejam retiradas as linhas 10 e 11, o algoritmo retornará que o ano é bissexto, independentemente do ano informado. IV. De acordo com o algoritmo, um ano não pode ser bissexto e não bissexto ao mesmo tempo. Assinale a alternativa CORRETA: Rafael Duarte a) As sentenças II e IV estão corretas. b) As sentenças III e IV estão corretas. c) As sentenças I e III estão corretas. d) As sentenças I e II estão corretas. 5. Durante o desenvolvimento de um programa de computador, é necessário que o programador faça o planejamento da modularização, a preocupação principal é facilitar o entendimento da organização do algoritmo, tornando a sua estrutura mais transparente e mais fácil de documentar. A prática da modularização ainda agrega benefícios no momento da manutenção do sistema, por tornar o código mais fácil e rápido de entender por um outro programador. Sobre a modularização de algoritmos, analise as sentenças a seguir: I- Consistir os dados é a técnica de verificação das entradas de dados, analisando se elas são válidas ou não. II- Os módulos são uma sequência de comandos dentro de um algoritmo com a maior independência possível de outros módulos do algoritmo. III- Os procedimentos não precisam receber um nome durante a sua declaração. IV- As funções são submódulos que produzem apenas um valor de saída. V- As variáveis locais podem ser usadas pelo programa principal. Assinale a alternativa CORRETA: a) Somente a sentença V está correta. b) As sentenças I, II e III estão corretas. c) As sentenças II, III e V estão corretas. d) As sentenças I, II e IV estão corretas. 6. A complexidade de algoritmos depende muito do problema a ser resolvido e da solução escolhida para este problema. Quanto mais complexo é o algoritmo, possivelmente mais extenso em termos de código-fonte ele será. Quanto mais regras e tarefas o programa de computador precisar executar, mais complexa será a organização do código-fonte. Isto implica a necessidade de focar muito tempo na organização da escrita dos códigos-fontes de um algoritmo. Sobre a modularização de algoritmos, assinale a alternativa CORRETA: a) Os parâmetros são utilizados pelos módulo para construir equações matemáticas. b) Modularizar os algoritmos dificulta a escrita de um algoritmo. c) A modularização de algoritmos torna o código-fonte mais simples de escrever. d) O nível de abstração é reduzido quando o algoritmo é modularizado. 7. Os algoritmos são utilizados, por programadores, para formalizar a solução de um problema, seja por fluxogramas para a sua equipe de programadores ou por uma linguagem de programação para o próprio computador. Eles uma sequência de operações para resolver um problema definido. Contudo, uma das características mais importantes dos algoritmos é ser preciso, seus passos não podem ser confusos, de forma a não existir ambiguidades na sua interpretação. Sobre aspectos relevantes na criação de um bom algoritmo, analise as sentenças a seguir: I- Elaborar um número infinito de passos. II- Não se preocupar com as entradas de dados. III- Criar a condição de parada das estruturas de repetição. IV- Analisar adequadamente a saída, chegando à solução esperada do problema. V- Não permitir que o programa entre em loop. Assinale a alternativa CORRETA: a) As sentenças II, III, IV e V estão corretas. b) As sentenças I, II e III estão corretas. c) As sentenças III, IV e V estão corretas. d) As sentenças IV e V estão corretas. 8. Nas linguagens de programação, os operadores são meios pelos quais conseguimos incrementar, decrementar, comparar e avaliar dados dentro de um programa de computador.Os operadores relacionais são operadores binários que resultam em valores lógicos "verdadeiro" e "falso". Assinale a alternativa CORRETA que apresenta o resultado lógico para a respectiva expressão: a) Expressão: 1 > 2. Resultado: Verdadeiro. b) Expressão: "computação" = "Computacao". Resultado: Verdadeiro. c) Expressão: 1999 <= 1914. Resultado: Verdadeiro. d) Expressão: 1 <> 2. Resultado: Verdadeiro. 9. As proposições podem ser combinadas entre si e, para representar essas combinações, são utilizados os conectivos lógicos "e", "ou", "se...então", "se e somente se" ou "não". A finalidade dos conectivos é conectar duas ou mais proposições. Sobre conectivos lógicos assinale a alternativa CORRETA que apresenta uma proposição com conjunção: a) O café não é preto. b) O café é preto ou o leite é branco. c) Se o café é preto então o leite é branco. d) O café é preto e o leite é branco. 10.Para o desenvolvimento de algoritmos, deve-se considerar dois aspectos elementares: a correção e a análise. A correção verifica a exatidão da solução utilizada e a análise verifica se o algoritmo é eficiente, considerando o uso da memória e o tempo de execução. Logo, a escolha de um algoritmo deve considerar o uso dos recursos computacionais e a execução do algoritmo. Sobre complexidade de algoritmos, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Um problema computacional pode ter mais de uma solução algorítmica. ( ) A finalidade de analisar a complexidade de um algoritmo é obter estimativas de tempo de execução dos programas que implementam o algoritmo desenvolvido. ( ) A complexidade de um algoritmo depende da saída de um algoritmo. ( ) É possível analisar a complexidade de um algoritmo por casos especiais, como pior caso, caso médio e melhor caso. Assinale a alternativa que apresenta a sequência CORRETA: a) F - V - F - V. b) V - V - V - F. c) V - F - F - V. d) V - V - F - V. Prova finalizada com 9 acertos e 1 questões erradas. Rafael Duarte
Compartilhar