Baixe o app para aproveitar ainda mais
Prévia do material em texto
Questão 1 A estrutura de repetição para é utilizada quando se sabe o número de vezes em que um trecho do algoritmo deve ser repetido. Observe o algoritmo a seguir: Algoritmo_Prova; var inteiro: i, x, a, cont; inicio a ← 0; cont ← 0; para i ← 1 ate 5 passo 1 faca escreva("Digite o valor de x:"); leia(x); se (x > a) entao a ← x; cont ← cont + 1; fim_se; fim_para; escreva(a,cont); fim. Assinale a alternativa que contém o que será impresso, respectivamente, para a e cont quando as entradas forem 2, 9, 5, 3, 7. A) 7 e 0. B) 7 e 2. C) 9 e 1. D) 9 e 2. E) 5 e 2. Questão 2 De acordo com a Sanepar, um pequeno buraco de 2 milímetros em um encanamento de água desperdiça 3,2 mil litros de água em um dia. Um analista da empresa escreveu o algoritmo em pseudocódigo, dado abaixo, para calcular o desperdício de água em função de buracos em encanamentos. Algoritmo_Prova; var inteiro: dias; real: largura, desperdicio; inicio escreva("Digite a largura do buraco em milimetros: "); leia(largura); escreva("Digite o numero de dias do vazamento: "); leia(dias); se (...I...) entao ...II...; escreva("Em ", dias, "dias foram desperdicados ", desperdicio, "mil litros de agua."); senao escreva("Você digitou algum dado inválido."); fim_se; fim. O comando que preenche corretamente as lacunas: A) ...II...: desperdicio ← (largura/2.0) * 3.2 * dias; B) ...I...: (largura > 0 ou dias > 0); C) ...I...: (largura > 0 e desperdicio > 0); D) ...II...: desperdicio ← (largura/3.2) * 2.0 * dias; E) ...II...: desperdicio ← desperdicio + (largura/2.0) * 3.2; Questão 3 Vetor é uma das estruturas que existe para o armazenamento de dados. Sua utilização é vasta devido a facilidade em ler e escrever dados e a velocidade com que as operações são realizadas, pois cada valor no vetor e armazenado sequencialmente na memória (MANZANO, 2015). Considere as afirmações sobre os vetores e escolha a opção correta. I – O vetor é uma estrutura de dados dinâmica, ou seja, seu tamanho pode ser redimensionado em tempo de execução. II – Como o vetor é uma estrutura unidimensional, para acessar seus dados é preciso somente um índice. III – Uma das características dos vetores é que eles podem armazenar dados de qualquer tipo. A) Apenas as alternativas II e III estão corretas. B) Apenas a alternativa II está correta. C) Apenas as alternativas I e II estão corretas. D) Apenas a alternativa I está correta. E) Apenas a alternativa III está correta. Questão 4 Sobre a estrutura condicional de seleção de casos, analise a afirmação abaixo e complete as lacunas apresentadas. A estrutura condicional de seleção de casos, __________, testa sucessivamente o valor de uma expressão contra uma lista de constantes __________. Quando os valores são avaliados, o comando é executado. Caso nenhum dos valores seja encontrado, o comando __________ será executado e os comandos são executados até o ponto que o comando __________ for localizado. Assinale a alternativa que preenche as lacunas corretamente, na ordem em que aparecem. A) switch – numéricas ou de caracteres – default – break. B) switch-case – inteiras ou de caracteres – break – default. C) switch-case – inteiras ou de caracteres – default – break. D) switch-case – numéricas ou de caracteres – default – break. E) switch – numéricas ou de caracteres – break – default. Questão 5 As estruturas de dados homogêneas permitem agrupar diversas informações dentro de uma mesma variável. Este agrupamento ocorre obedecendo sempre ao mesmo tipo de dado. Considere o seguinte algoritmo: Algoritmo_Prova; var inteiro: m[4,3]; inteiro: i,c; inicio para i ← 1 ate 3 passo 1 faca para c ← 1 ate 4 passo 1 faca m[i,c] ← i + c; fim_para; fim_para; fim. O valor do elemento m[1,3] é: A) 3. B) 4. C) 2. D) 1. E) 5. Questão 6 As estruturas de dados homogêneas permitem agrupar diversas informações dentro de uma mesma variável. Este agrupamento ocorre obedecendo sempre ao mesmo tipo de dado. Considere o seguinte algoritmo: Algoritmo_Prova; var inteiro: x[20]; inicio para i ← 1 ate 10 passo 1 faca x[i] ← i*3; fim_para; fim. Assinale a alternativa que contém os dados armazenados em cada posição do vetor, da primeira até a última, respectivamente, após a execução do código. A) 2, 4, 6, 8, 10, 12, 14, 16, 18, 20. B) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. C) 3, 6, 9, 12, 15, 18, 21, 24, 27, 30. D) 3, 4, 5, 6, 7, 8, 9, 10, 11, 12. E) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. Questão 7 Analise o código abaixo na linguagem C. #include < stdio.h > #include < conio.h > int main() { int X, Y, Z; X = 1; Y = 3; Z = 4; if (X == 1) prinft("verdadeiro - "); else prinft ("falso - "); if (Y == 3) prinft ("verdadeiro - "); else prinft ("falso - "); if (Z == 5) prinft ("verdadeiro"); else prinft ("falso"); return 0; } A alternativa correta, quanto à saída produzida, é: A) falso – falso – verdadeiro. B) verdadeiro – verdadeiro – falso. C) falso – verdadeiro – verdadeiro. D) verdadeiro – falso – falso. E) falso – verdadeiro – falso. Questão 8 Considere o seguinte trecho de um programa em português estruturado que utiliza estruturas lógicas. quantidade ← 0; x ← 0; escreva("Digite um valor numérico: "); leia(valor); enquanto (valor > 0) faca se (valor > x) entao x ← valor; quantidade ← 1; senao se (valor = x) entao quantidade ← quantidade + 1; fim_se; fim_se; escreva("Digite um novo valor:"); leia(valor); fim_enquanto; escreva ("x = ", x); escreva ("quantidade = ", quantidade); É correto dizer que: A) se forem lidos vários valores positivos, a variável x armazena o maior deles e a variável quantidade conta quantas vezes ele se repetiu. B) caso sejam lidos dois ou mais valores positivos, a variável quantidade sempre será maior que 1. C) o trecho utiliza estrutura condicional recursiva, pois há um comando se_então dentro de outro se_então. D) os comandos dentro da estrutura de repetição sempre serão executados pelo menos uma vez. E) se o primeiro valor lido for negativo, será impresso x = 0 e quantidade = 1. Questão 9 A linguagem de programação é a linguagem de comunicação de ideias entre o computador e as pessoas. Neste contexto, analise as afirmativas abaixo marcando V para as verdadeiras e F para as falsas. ( ) A linguagem de máquina apresenta vários inconvenientes pois todas as operações são escritas como conjuntos de uns e zeros para que possam ativar diretamente os dispositivos eletrônicos do computador. ( ) Os ambientes em que escrevemos nosso código na linguagem C possuem um programa que é capaz de transformar esse código em um escrito em linguagem de máquina. Este programa é chamado interpretador. ( ) Se existir erro de semântica em um código significa que algum comando ou instrução existente no programa foi escrito de maneira incorreta e o programa não poderá ser executado. ( ) Quando existem erros de sintaxe em um código significa que alguma instrução não está fazendo o que queríamos que fizesse e os resultados apresentados pelo programa não serão corretos. Assinale a alternativa que apresenta a sequência correta. A) F – F – V – F. B) V – V – V – V. C) F – V – V – V. D) V – F – F – F. E) V – F – V – F. Questão 10 A atribuição se refere ao ato de atribuir um(a) valor/informação a uma variável. Analise o algoritmo abaixo, em português estruturado, e diga o que será impresso na tela ao término de sua execução. Algoritmo_Prova; var inteiro: x, z, y; inicio x ← 5; y ← 20; z ← y – x*2; escreva(z); x ← 20; y ← x – z/2; escreva(y); fim. Assinale a alternativa que fornece os valores na ordem apresentada no algoritmo acima. A) 20 e 0. B) 10 e 15. C) 20 e 20.D) 20 e 10. E) 15 e 10. Questão 11 Analise o programa abaixo: #include < stdio.h > #include < conio.h > int main() { int X, S; S = 0; X = 1; while ( X != 0) { printf("Escreva o valor de X: "); scanf("%d", &X); S = S + X; } printf("Soma = %d ", S); return 0; } Assinale a alternativa correta. A) A estrutura de repetição será finalizada quando o usuário fornecer zero para a variável X. B) O algoritmo tem por função efetuar a leitura de 10 números sendo eles positivos ou negativos (-1 sai da estrutura de repetição). C) O algoritmo tem por função fazer a leitura de cinco números positivos. D) O algoritmo tem por função fazer a leitura de cinco números negativos. E) O algoritmo tem por função efetuar a soma dos números primos. Questão 12 As variáveis são muito úteis para o armazenamento de diversos tipos de dados. No contexto dos tipos de estruturas de dados, analise as afirmativas abaixo. I. A variável do tipo vetor possui a estrutura de uma tabela contendo apenas 1 coluna e N linhas ou N colunas e 1 linha. II. A variável do tipo matriz possui a estrutura de uma tabela contendo N colunas e M linhas. III. Ponteiro é um tipo de variável composta heterogênea. IV. Podemos manipular variáveis e outros recursos pelo endereço de memória utilizando registros. Assinale a alternativa correta. A) Somente as alternativas I e III estão corretas. B) Somente a alternativa III está correta. C) Somente a alternativa II está correta. D) Somente a alternativa I está correta. E) Somente as alternativas I e II estão corretas. Questão 13 As sub-rotinas são blocos de comandos que realizam tarefas específicas, ou seja, são conjuntos de instruções projetadas para cumprirem uma atividade singular. Neste contexto, analise as afirmativas abaixo. I. Uma função é um bloco de instruções que realiza uma ação e retorna um valor ao programa principal (por exemplo, calcular a área de uma figura geométrica). II. Quando declaramos uma função, devemos informar qual o seu tipo, ou seja, qual o tipo do valor que será retornado ao programa principal. III. Na chamada por referência é passado uma cópia da variável para a sub-rotina; qualquer alteração feita no parâmetro não reflete em alteração no argumento. IV. Na chamada por valor todas as alterações realizadas no parâmetro refletem em alterações no argumento. Estão corretas: A) I e III, apenas. B) II e III, apenas. C) I e II, apenas. D) I e IV, apenas. E) II e IV, apenas. Questão 14 Analise as funções abaixo. (I): int fat(int n) { if (n==0) return 1; else return n*fat(n-1); } (II): int fat(int n) { int i = 0; int f = 1; for(i = 1; i <= n; i++) f = f*i; return f; } (III): int fib(int n) { int f1 = 0; int f2 = 1; int f3, i; for (i = 1; i <= n; i++) { f3 = f2 + f1; f1 = f2; f2 = f3; } return f1; } (IV): void torre (int n, char a, char b, cahr c) { if (n > 0) { torre(n – 1, a, b, c); printf("mover de %c para %c", a, b); torre(n – 1, c, b, a); } } São funções recursivas as funções dadas em: A) II e IV, apenas. B) I e III, apenas. C) I e II, apenas. D) II e III, apenas. E) I e IV, apenas. Questão 15 As variáveis e as constantes são locais reservados na memória para armazenamento dos dados e cada uma possui um nome próprio para sua identificação. Sobre os conceitos de variáveis e constantes, analise as afirmativas abaixo. I. Em um algoritmo, uma constante é um espaço físico na memória, identificada por um nome, que pode sofrer alteração durante a execução do programa. II. Enquanto as variáveis só "existem" em tempo de execução, elas são associadas a "nomes", chamados identificadores, durante o tempo de desenvolvimento. III. O escopo de uma variável é definido pelos blocos onde a variável pode ser utilizada; variáveis diferentes declaradas no mesmo escopo não precisam ter nomes diferentes. IV. É uma boa prática de programação sempre inicializar as variáveis para evitar que recebam dados que estejam na memória. Assinale a alternativa correta. A) Apenas as afirmativas I e II estão corretas. B) Apenas as afirmativas II e IV estão corretas. C) Apenas as afirmativas II e III estão corretas. D) Todas as afirmativas estão corretas. E) Apenas as afirmativas I e III estão corretas. Questão 16 Variáveis podem armazenar conjuntos de informações em vetores e/ou matrizes desde que os elementos desses conjuntos sejam do mesmo tipo, mas, em muitos casos, é necessário trabalhar com um conjunto de dados de tipos distintos.Para resolver esse problema, poderá ser usada uma estrutura de dados chamada de registro. Classifique cada uma das seguintes afirmações em "V" (se verdadeira) ou "F" (se falsa). ( ) Um registro reúne uma coleção de informações de um objeto. ( ) Cada informação é considerada um atributo ou campo de registro. ( ) Um atributo pode ser definido como qualquer tipo de dado primitivo ou como uma outra estrutura de dados. ( ) Ao definir um tipo de dado registro, contendo os atributos adequados ao objeto que você está tratando no algoritmo, as posições de memória para armazenar as informações ainda não foram reservadas. Assinale a alternativa que corresponde à sequência correta de indicações. A) F - V - V - V. B) F - F - F - V. C) V - F - F - V. D) V - V - V - V. E) V - V - F - F.
Compartilhar