Prévia do material em texto
Disciplina: Lógica e Técnicas de Programação (ADS05) Avaliação: Avaliação Final (Objetiva) - Individual FLEX ( Cod.:651192) ( peso.:3,00) Prova: 25178283 Nota da Prova: 9,00 Legenda: Resposta Certa Sua Resposta Errada Parte superior do formulário 1. 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. Assinale a alternativa que apresenta a sequência CORRETA: a) F - V - V - F. b) V - V - V - F. c) V - V - F - F. d) V - 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 representação de algoritmos por Diagrama de Chapin? a) É a construção de algoritmos com diagramas de atividade. b) É a construção de algoritmos em linguagem natural. c) É a construção de algoritmos com representações gráficas hierárquica e estruturada. d) É a construção de algoritmos em linguagem computacional. 3. Os algoritmos em linguagem de programação são sequenciais, isso quer dizer que a ordem de execução de um programa começa na primeira linha e vai linha por linha até a última, assim o algoritmo executa sempre os mesmos passos para quaisquer valores de entrada. Os programas de computador têm a capacidade de selecionar partes de código-fonte em função de condicionais presentes no corpo do algoritmo por meio das estruturas de seleção. Analise o algoritmo a seguir e classifique V para as sentenças verdadeiras e F para as falsas: 01 algoritmo "Tipo de triangulo" 02 var 03 l1, l2, l3: numérico 04 inicio 05 escreval ("Digite o lado 1 do triângulo: ") 06 leia(l1) 07 escreval ("Digite o lado 2 do triângulo: ") 08 leia(l2) 09 escreval ("Digite o lado 3 do triângulo: ") 10 leia(l3) 11 12 se (l1 = l2) e (l2 = l3) entao 13 escreval ("O triângulo é equilátaro") 14 senao se (l1 <> l2) e (l1 <> l3) e (l2 <> l3) entao 15 escreval ("O triângulo é escaleno") 16 senao se (l1 = l2) ou (l1 = l3) ou (l2 = l3) entao 17 escreval ("O triângulo é isósceles") 18 fimse 19 fimse 20 fimse 21 fimalgoritmo ( ) Caso o valor inserido pelo usuário seja 5 para l1, 5 para l2 e 5 para l3, a mensagem exibida ao usuário será "O triângulo é isósceles". ( ) Caso o valor inserido pelo usuário seja 10 para l1, 10 para l2 e 12 para l3, a mensagem exibida ao usuário será "O triângulo é isósceles". ( ) Para que um triângulo seja equilátero, todos os lados devem ser iguais. ( ) Para que um triangulo seja isósceles, basta que dois lados tenham o mesmo tamanho. Assinale a alternativa que apresenta a sequência CORRETA: a) F - V - V - F. b) F - V - V - V. c) F - V - F - F. d) V - F - V - V. 4. Os registros são muito úteis quando utilizados para armazenar muitos objetos complexos do mundo real, como armazenar nome, CPF, data de nascimento de cinquenta alunos. É altamente indicado trabalhar com um único vetor de registro ALUNO, ao invés de criar muitas variáveis de tipos primitivos ou muitos vetores. Sobre registros, analise as sentenças a seguir: I- A palavra " tipo " é utilizada para a criação de um novo registro. II- Os vetores podem armazenar listas de registros criados pelo desenvolvedor. III- A declaração " tipo ALUNO: registro " é uma forma válida de criar um tipo de registro para armazenar dados de alunos. IV- As variáveis internas dos registros são acessadas por meio de um ponto e vírgula entre o nome da variável que armazena o registro e a variável interna desejada. Assinale a alternativa CORRETA: a) As sentenças I, II e III estão corretas. b) As sentenças II, III e IV estão corretas. c) As sentenças I, III e IV estão corretas. d) Somente a sentença I está correta. 5. Considere uma situação em que um professor que queira saber se existem alunos cursando, ao mesmo tempo, as disciplinas A e B, tenha implementado um programa que: 1) inicializa um array a de 30 posições que contém as matrículas dos alunos da disciplina A; 2) inicializa outro array b de 40 posições, que contém as matrículas dos alunos da disciplina B; 3) imprime a matrícula dos alunos que estão cursando as disciplinas A e B ao mesmo tempo. Considere, ainda, que os arrays foram declarados e inicializados, não estão necessariamente ordenados, e seus índices variam entre 0 e n - 1, sendo n o tamanho do array. 1. para ( i de 0 até 29 ) faça 2. para ( j de 0 até 39 ) faça 3. 4. 5. 6. fim-para 7. fim-para Com base nessas informações, assinale a alternativa CORRETA que apresenta o trecho a ser incluído nas linhas 3, 4 e 5 do código, para que o programa funcione corretamente: a) 3. se ( a[i] = b[j] ) entao 4. escreva ( a[j] ) 5. fim-se b) 3. se ( a[i] = b[j] ) entao 4. escreva ( a[i] ) 5. fim-se c) 3. se ( a[i] = b[i] ) entao 4. escreva ( a[i] ) 5. fim-se d) 3. se ( a[j] = b[i] ) entao 4. escreva ( a[j] ) 5. fim-se 6. As estruturas de repetição permitem aos algoritmos executarem uma parte do código-fonte mais de uma vez, repetindo várias vezes um determinado trecho. Cada repetição é conhecida como laço ou loop. Nestas estruturas, é fundamental preocupar-se com a condição de parada, ou seja, as estruturas de repetição devem obrigatoriamente entrar em uma condição que faça a parada da execução do algoritmo. Assinale a alternativa CORRETA que apresenta a estrutura de repetição com teste no início: a) Enquanto-faça. b) Caso-seja. c) Faça-enquanto. d) Faça-para. 7. Os conectivos lógicos possuem a finalidade de ligar duas ou mais proposições, que são presentes nas proposições compostas. Duas checagens são importantes para determinar se as proposições compostas são verdadeiras ou falsas. A primeira, verificar o valor das proposições que compõem as sentenças, e a segunda, o tipo de conectivo que liga as proposições de uma mesma sentença. Sobre a negação, analise as seguintes afirmativas: I- A negativa de "O almoço é barato" é "Não vou almoçar". II- Um sinal de til pode ser utilizado para representar a negação de uma proposição. III- Na lógica proposicional, é possível negar uma proposição composta. IV- A negação da proposição p é representada por p~. Assinale a alternativa CORRETA: a) Somente a afirmativa I está correta. b) Somente a afirmativa IV está correta. c) As afirmativas I, II e IV estão corretas. d) As afirmativas II e III estão corretas. 8. Pesquisar e definir quais os valores necessários a serem armazenados no algoritmo, quais deles variam e quais permanecem constantes, são tarefas importantes nas fases iniciais da concepção do algoritmo. Estas etapas de entrada e saída de dados são a base do conceito de algoritmo, além da etapa de processamento e feedback. Sobre os tipos de dados, analise as sentenças a seguir: I- Os dados podem ser armazenados em variáveis, as quais são utilizadaspara manipular as informações. II- Os dados são porções das informações processadas pelo computador. III- Instruções definem como os dados devem ser tratados. IV- Os tipos de dados compostos são disponibilizados pelas linguagens de programação. Assinale a alternativa CORRETA: 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) As sentenças I, II e III estão corretas. 9. Considere um painel luminoso representado por uma matriz quadrada de ordem n, sendo n um número inteiro ímpar. A cor de cada célula é definida pelo elemento cor[i, j] utilizado na posição correspondente no painel. Considere, ainda, que a função par(x) devolve verdadeiro se o argumento x for um número par. O trecho de código a seguir foi elaborado para produzir determinado padrão no painel: ... m = n (+1)/2 para ( i de 1 até n ) faça para ( j de 1 até n ) faça se ((par(i) e par(j)) e ((i - j = 0) ou ((i + j) = (n + 1)) ou (i = m) ou (j = m)) então cor[i,j] = preto senão cor[i,j] = branco fim-se fim-para fim-para ... Nessa situação, se o valor de n for igual a 7, o padrão que será produzido no painel é: a) Imagem A. b) Imagem D. c) Imagem C. d) Imagem B. 10. A elaboração dos algoritmos é a base da programação de computadores. Ela é uma sequência finita de passos, ordenados de forma lógica, que levam à realização de uma tarefa. Os algoritmos estão no nosso dia a dia na forma narrativa, por exemplo, a explicação de como sacar dinheiro em um caixa eletrônico ou ensinar uma pessoa a trocar uma lâmpada. Sobre os métodos para a construção de algoritmos, analise as sentenças a seguir: I- Entender o problema a ser resolvido. II- Identificar e definir dados de entradas. III- Montar o hardware utilizado pelo algoritmo. IV- Construir o algoritmo. V- Avaliar o custo do sistema desenvolvido. Assinale a alternativa CORRETA: a) As sentenças III, IV e V estão corretas. b) As sentenças II e V estão corretas. c) As sentenças I, II, IV e V estão corretas. d) As sentenças I, II e IV estão corretas. Parte inferior do formulário