Prévia do material em texto
1. Não existe consenso sobre qual seria a melhor maneira de representar um algoritmo. É necessário avaliar o problema e o conhecimento dos programadores para estudar a maneira mais adequada. As formas possíveis são descrição narrativa, fluxograma, diagrama de Chapin e pseudocódigos. Sobre as formas de representação de algoritmos, analise as sentenças a seguir: I- Seu objetivo é apresentar uma visão mais hierárquica e estruturada da lógica do sistema. II- A representação de algoritmos Portugol é entendida pelos computadores. III- As linguagens de programação e linguagens narrativas possuem a mesma rigidez na escrita. IV- Fluxogramas fazem uso, apenas, de palavras para representar uma solução algorítmica. 2. Os arquivos permitem manipular uma grande quantidade de dados com mais facilidade e rapidez. Os registros dentro dos arquivos físicos podem ser trazidos para a memória volátil do computador, permitindo manipular os dados de acordo com a necessidade da lógica. Analise o código-fonte a seguir e classifique V para as sentenças verdadeiras e F para as falsas: 01 declare LIV registro 02 (CODIGO, ANO numérico; 03 TITULO, AUTOR, EDITORA texto); 04 05 LIVRO LIV; 06 07 BIBLIOTECA arquivo de LIV; ( ) A partir da linha 01 até a linha 03, é criado um registro contendo cinco variáveis internas. ( ) O registro LIV possui apenas variáveis do tipo numérico e texto. ( ) A linha 07 cria um arquivo que possuirá vários registros de LIVRO. ( ) O comando BIBLIOTECA cria um vetor de LIVRO. 3. Os arquivos são estruturas que armazenam valores na memória não volátil de um computador, o qual pode ser lido ou alterado por algoritmos com a finalidade de armazenar os dados independentemente do tempo de execução do algoritmo, diferentemente dos registros que são apagados quando o programa de computador é fechado. Sobre arquivos, assinale a alternativa CORRETA: a) Os arquivos são formados por unidades de dados conhecidas como "campos". Disciplina: Lógica e Técnicas de Programação (ADS05) Avaliação: Avaliação Final (Objetiva) - Individual Semipresencial Legenda: Resposta Certa Sua Resposta Errada Assinale a alternativa CORRETA: a) As sentenças II e III estão corretas. b) As sentenças I e II estão corretas. c) As sentenças III e IV estão corretas. d) As sentenças I, II e III estão corretas. Assinale a alternativa que apresenta a sequência CORRETA: a) V - V - F - F. b) V - V - V - F. c) V - F - F - V. d) F - V - V - F. b) Os arquivos podem armazenar no máximo cinco campos. c) A memória primária é utilizada pelo computador para armazenar os arquivos gerados pelos algoritmos. d) Os arquivos são compostos por uma coleção de registros. 4. No desenvolvimento de um programa de computador, ao fazer a entrada de dados, é necessária a consistência dos dados, ou seja, verificar se estes valores são válidos ou não. Durante esse processo, é fundamental apresentar mensagens de retorno ao usuário, apresentando o resultado da validação dos dados de entrada de um módulo. Sobre a modularização de programas de computador, analise as sentenças a seguir: I- A modularização consiste em quebrar (dividir) um algoritmo maior em pequenas partes, que são chamadas demódulos ou subalgoritmos. II- Os algoritmos podem possuir apenas um subalgoritmo, não sendo possível construir dois módulos dentro de umalgoritmo. III- O módulo principal solicita a execução de vários módulos em uma sequência determinada. IV- Quando é criado um módulo, especifica-se o número e os tipos das variáveis que correspondem aosparâmetros. V- As declarações locais são variáveis que podem ser utilizadas por qualquer módulo. 5. 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) O nível de abstração é reduzido quando o algoritmo é modularizado. b) Os parâmetros são utilizados pelos módulo para construir equações matemáticas. c) Modularizar os algoritmos dificulta a escrita de um algoritmo. d) A modularização de algoritmos torna o código-fonte mais simples de escrever. 6. 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 - F - V. c) V - F - F - V. d) V - V - V - F. 7. Problemas do mundo real podem ser resolvidos de variadas formas algorítmicas, cabendo ao programador de sistemas selecionar a melhor alternativa, seja pela facilidade de entendimento, codificação e depuração, ou a escolher por um algoritmo que aproveite melhor os recursos computacionais, executando a solução mais rapidamente e permitindo escalar a solução para problemas maiores. Sobre a complexidade de algoritmos, analise as sentenças a seguir: Assinale a alternativa CORRETA: a) Somente a sentença III está correta. b) As sentenças I, II e III estão corretas. c) As sentenças I, II e V estão corretas. d) As sentenças I, III e IV estão corretas. I- A análise de complexidade de um algoritmo tem por objetivo estimar o tempo de execução do programa com asolução algorítmica escolhida. II- A complexidade busca avaliar o desempenho do algoritmo, independentemente da sua implementação. III- As avaliações de complexidade de algoritmos não dependem da entrada de dados dos algoritmos. IV- As saídas de dados influenciam diretamente no cálculo de complexidade dos algoritmos. 8. As soluções de problemas por meio de algoritmos devem garantir a sua repetibilidade. Logo, ele deve ser especificado com clareza e exatidão, principalmente a sequência em que os passos devem ser realizados. Para que um computador consiga executar uma tarefa, é preciso que ela seja detalhada de forma que uma máquina consiga compreender, por meio de uma linguagem de programação. Classifique V para as sentenças verdadeiras e F para as falsas: ( ) Nas etapas de construção de um algoritmo, os procedimentos necessários de manipulação das informações com o objetivo de produzir o resultado esperado é conhecido como a fase de processamento. ( ) Um característica importante dos algoritmos é a sua clareza ou definição, a fim de gerar duplo entendimento. ( ) O loop é a incapacidade de um algoritmo interromper a sua execução, por sua vez, não produzindo um resultado final. ( ) As entradas são as informações que alimentam um algoritmo. Assinale a alternativa que apresenta a sequência CORRETA: 9. O fluxograma possui formas gráficas específicas para representar cada passo de um algoritmo, de forma a construir uma forma mais visual e entendível da solução.Existe uma forma para representar o início de um programa, um para indicar a leitura de dados do usuário, um para indicar a exibição de dados, estruturas de decisão e finalização do programa. Analise a figura anexa que apresenta o fluxograma de um algoritmo, que efetua a soma de dois números: I- O fluxograma possui duas entradas. II- O fluxograma possui um elemento gráfico terminal. III- A solução executa apenas um processamento de cálculo. IV- O algoritmo apresenta uma sequência de passos finito. V- O algoritmo não apresenta adequadamente seu início e fim. Assinale a alternativa CORRETA: Assinale a alternativa CORRETA: a) As sentenças II e III estão corretas. b) As sentenças I e III estão corretas. c) As sentenças I e II estão corretas. d) As sentenças III e IV estão corretas. a) V - V - V - F. b) F - F - V - V. c) V - V - F - V. d) V - F - V - V. 10.Os vetores multidimensionais possuem quantas dimensões forem necessárias para representar a informação. Os vetores bidimensionais são conhecidos como matrizes, as quais possuem representação visual semelhante a planilhas de Excel. A seguir é apresentada uma matriz com as notas de vários alunos, armazenadas na variável "notas" com índices iniciando em zero, em que a primeira coluna armazena o nome do aluno e as demais armazenam suas notas. Sobre matrizes, analise as sentenças a seguir: I- Para recuperar a nota 10,00 de Rafaela, será necessário acessar a posição [2][1]. II- Os índices são números que representam unicamente as posições de um elemento dentro da matriz. III- Para recuperar a nota 6,00 de Paulo, é necessário acessar a posição [1][2]. IV- A execução do comando "escreva ( notas[2][2] )" será "Rafaela". Assinale a alternativa CORRETA: a) As sentenças II, III e V estão corretas. b) As sentenças III e IV estão corretas. c) As sentenças I, II e III estão corretas. d) As sentenças I, III, IV estão corretas. a) As sentenças III e IV estão corretas. b) As sentenças I e II estão corretas. c) As sentenças II e IV estão corretas. d) Somente a sentença II está correta.