Buscar

Prova Linguagem e Técnica de Programação UVA A2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Local: Sala 1 - Sala de Aula / Andar / Polo Niterói - Bay Market / POLO NITERÓI - RJ 
Acadêmico: EAD-IL10309-20212A
Aluno: EDUARDO FERREIRA TRINDADE 
Avaliação: A2-
Matrícula: 20211302973 
Data: 18 de Junho de 2021 - 08:00 Finalizado
Correto Incorreto Anulada  Discursiva  Objetiva Total: 10,00/10,00
1  Código: 37556 - Enunciado: Nas questões pertinentes à lógica e à matemática, temos a lógica
proposicional. A lógica proposicional, também conhecida como álgebra das proposições, é um
sistema formal no qual as fórmulas representam proposições que podem ser constituídas por
meio da combinação de proposições atômicas que usam conectivos lógicos e um sistema de
regras de derivação. Um cálculo sempre será apresentado como um sistema formal que
determina um conjunto de expressões sintáticas.Considerando o exposto e com base na
sentença “10 + 12 = 23”, identifique a qual sentença pertence:
 a) Sentença declarativa negativa verdadeira.
 b) Quantificadores.
 c) Sentença declarativa afirmativa verdadeira.
 d) Sentença que não é preposição.
 e) Sentença declarativa afirmativa falsa.
Alternativa marcada:
e) Sentença declarativa afirmativa falsa.
Justificativa: Resposta correta: Sentença declarativa afirmativa falsa. Uma sentença declarativa
expressa na forma afirmativa, atribuímos a ela um valor lógico F, visto que a sentença é falsa. 
Distratores:Sentença declarativa negativa verdadeira. Errada. Uma sentença declarativa expressa
na forma negativa. Contudo podemos atribuir a ela um valor lógico V, pois se trata de uma
sentença verdadeira.Sentença que não é preposição. Errada. Não trata de uma sentença,
imperativa, interrogativa e/ou exclamativa.Quantificadores. Errada. Essa sentença não pode ser
considerada uma proposição, pois não sabemos o conteúdo atribuído para a variável Y, ou seja,
não podemos atribuir um valor lógico V ou F. Sentença declarativa afirmativa verdadeira. Errada.
Uma sentença declarativa expressa totalmente de forma afirmativa. Nesse caso, podemos
também atribuir um valor lógico. Uma vez que a sentença é verdadeira, naturalmente, o seu valor
lógico será V.
1,00/ 1,00
2  Código: 37692 - Enunciado: Temos, a seguir, um programa em Linguagem C que chama uma
função para realizar o somatório de dois valores do tipo inteiro.
#include <stdio.h>int soma(int num1, int num2){    int soma = 0;    soma = num1 + num2;    return
soma;} main (){int n1 = 9 , n2 = 19, res = 0;   res=soma(n1, n2); //chamada da função printf ("\nA
SOMA EH: %d.\n\n", res);} 
Com base na implementação do programa desenvolvido em linguagem de programação C,
teremos um resultado que será calculado com base na execução da função, que poderá ser
observado na análise do código. Utilize seus conhecimentos em lógica de programação para
definir qual resultado será exibido após a última execução da linha printf ("\nA SOMA EH:
%d.\n\n", res);, ou se existem outros pontos de erros que podem impedir o funcionamento
correto do código, bem como problemas na compilação.
 a) 27.
 b) Erro de lógica na estrutura de repetição. Nenhum valor será exibido.
 c) 28.
 d) 12.
 e) Erro de sintaxe no código.
1,50/ 1,50
Alternativa marcada:
c) 28.
Justificativa: Resposta correta:28. Correta. Os valores informados são 9 para a variável n1, e 19
para a variável n2. Com isso, a somatória a ser exibida após o término da função será 28. 
Distratores:27. Errada. Os valores informados são 9 para a variável n1, e 19 para a variável n2.
Com isso, a somatória a ser exibida após o término da função será 28.12. Errada. Os valores
informados são 9 para a variável n1, e 19 para a variável n2. Com isso, a somatória a ser exibida
após o término da função será 28.Erro de lógica na estrutura de repetição. Nenhum valor será
exibido. Errada. Não há nenhum erro de lógica no programa.Erro de sintaxe no código. Errada.
Não há nenhum problema com a sintaxe do programa.
3  Código: 38037 - Enunciado: “Segundo Schildt (1996), Dennis Ritchie inventou a linguagem C e foi
o primeiro a implementá-la usando um computador DEC PDP-11, que utilizava o sistema
operacional UNIX. Essa linguagem é resultante de um processo evolutivo de linguagens, cujo
marco inicial foi uma linguagem chamada BCPL, desenvolvida por Martin Richards, que teve forte
influência em uma linguagem denominada B, inventada por Ken Thompson. Na década de 1970,
B levou ao desenvolvimento de C.”(Fonte: ASCENCIO, A. F. G.; CAMPOS, E. A. V. Fundamentos da
programação de computadores: algoritmos, Pascal e  C/C++ [padrão ANSI] e Java. 3. ed. São
Paulo: Pearson, 2012. p. 10.) 
Considerando a Linguagem C avalie as afirmações a seguir:I. 1.2e3 é um número em notação
exponencial.II. São nomes de identificadores: valor, nota 1, 10porcento, nome_sobrenome.III. A
partir dos caracteres //, se pode fazer um comentário dentro de uma mesma linha.IV. Um
exemplo de operador lógico é “ && “, e um exemplo de operador relacional é “ != “. 
É correto apenas o que se afirma em:
 a) I e II, apenas.
 b) I, II, III e IV.
 c) II, apenas.
 d) II, III e IV, apenas.
 e) I, III e IV, apenas.
Alternativa marcada:
e) I, III e IV, apenas.
Justificativa: Resposta correta: I, III e IV, apenas. I. 1.2e3 é um número em notação
exponencial. Correta. A notação exponencial em C utiliza a letra e ou E antes do expoente da base
10. A potência de 10 vem após a letra, obrigatoriamente um número inteiro, positivo ou
negativo.III. A partir dos caracteres //, se pode fazer um comentário dentro de uma mesma linha.
Correta. Os caracteres // são utilizados para se fazer algum comentário numa mesma linha. Caso
o comentário utilize mais de uma linha, essas também devem ter // antes do comentário. Outra
possibilidade para fazer um comentário com mais de uma linha é utilizar /* para começar o
comentário e */ para terminá-lo.IV. Um exemplo de operador lógico é “ && “, e um exemplo de
operador relacional é “ != “. Correta. && é o operador lógico E e != é o operador relacional
diferente. 
Distrator:II. São nomes de identificadores: valor, nota 1, 10porcento, nome_sobrenome.
Incorreta. O nome de identificador não pode começar com número. No caso, 10porcento.
1,00/ 1,00
4  Código: 38044 - Enunciado: “Os símbolos gráficos da norma ISO 5807:1985 (E) permitem
demonstrar de forma clara a linha de raciocínio lógico utilizada por um programador de
computadores, de modo que seja fácil a quem não conhece programação entender o que se
pretende em um determinado programa."(Fonte: MANZANO, J. A. N. G.; OLIVEIRA, J. F. de.
1,00/ 1,00
Algoritmos: Lógica para desenvolvimento de programação de computadores. [2.3.2 Norma ISO
5807:1985 (E), p.30]. 28. ed. São Paulo: Érica-Saraiva, 2016.) 
Neste contexto, o losango  é um símbolo gráfico utilizado em algoritmos, cujo significado é:
 a) Decisão.
 b) Exibição.
 c) Entrada manual.
 d) Conector.
 e) Processamento.
Alternativa marcada:
a) Decisão.
Justificativa: Resposta correta: Decisão. Correta. O símbolo representa o uso de desvios
condicionais para outros pontos do programa de acordo com situações variáveis. 
Distratores:Processamento. Errada. Representa a execução de uma operação ou grupo de
operações que estabelecem o resultado de uma operação lógica ou
matemática. Exibição. Errada. Representa a execução da operação de saída visual de dados em
um monitor de vídeo conectado ao console do computador.Entrada manual. Errada. Representa
a entrada manual de dados, normalmente efetuada em um teclado conectado diretamente ao
console do computador. Conector. Errada. Representa a entrada ou a saída em outra parte do
diagrama de blocos. Pode ser usado na definição de quebras de linha e na continuação da
execução de decisões.
5  Código: 37697 - Enunciado: Temos, a seguir, um programa em Linguagem C que trata da criação
de um vetor de 4 posições e cujos valores já foram inicializados no vetor, e que, a partir de uma
estrutura de repetição, executa suas funções. 
#include<stdio.h>main(){int vet[5] {20, 20, 20, 40, 30};int i;float soma = 0;i = 1;while (i<=4) // rotina
para preencher o vetor{soma = soma + vet[i];                  i++;              } printf("Numero %f\n",
soma / i + 1);} 
Com base na implementação do programa desenvolvido em linguagem de programação C,
teremos um resultado que será calculado com base na execução da estrutura de repetição, que
poderá ser observado na análise do código. Utilize seus conhecimentos em lógica de
programação para definir qual resultado será exibido após a última execução da linha
printf("Numero %f\n", soma / i + 1);.
 a) 23.
 b) 24.
 c) 26.
 d) 28.
 e) 22.
Alternativa marcada:
a) 23.
Justificativa: Resposta correta:23. Correta. Teremos o valor 110 armazenado na variável soma e
o valor 6 armazenado na variável i. Dessa forma, teremos 110 dividido por 5, que dá um total de
22 e, na sequência, teremos 22 sendo somado com mais 1, totalizando 23. 
Distratores:24, 26, 28, 22. Erradas. Teremos o valor da variável soma sendo 110 e o valor da
variável i sendo 5. Dessa forma teremos 110 dividido por 5, que dá um total de 22 e, na sequência,
teremos 22 sendo somado com mais 1, totalizando 23, conforme o código explicita na linha
printf("Numero %f\n", soma / i + 1);. É preciso levar em consideração o valor fixo das informações
atribuídas ao vetor int vet[5] {20, 20, 20, 40, 30};, bem como a quantidade de repetições
executadas na linha de código while (i<=4).
1,50/ 1,50
6  Código: 39490 - Enunciado: O português estruturado utiliza uma forma de escrever algoritmos
que facilita o aprendizado de quem está começando a programar computadores. Para suportar
essa forma de escrever algoritmos foram desenvolvidos alguns recursos, como o VisuAlg e o
Portugol, que utilizam linguagens interpretativas simples, escritas em pseudocódigo,  permitindo
o funcionamento do algoritmo no computador.Considere o seguinte pseudocódigo: 
//Início do algoritmoi: inteiroi := 10enquanto i < 102 faca   escreva (i:4)   i := i + 2fimenquanto//Fim
do algoritmo 
Podemos afirmar que este algoritmo mostrará os números:
 a) Pares de 10 a 102, utilizando a estrutura de repetição enquanto/faca.
 b) Pares de 11 a 102, utilizando a estrutura de repetição enquanto/faca.
 c) Pares de 10 a 100, utilizando a estrutura de repetição enquanto/faca.
 d) Pares de 12 a 100, utilizando a estrutura de repetição enquanto/faca.
 e) Pares de 12 a 102, utilizando estrutura de repetição enquanto/faca.
Alternativa marcada:
c) Pares de 10 a 100, utilizando a estrutura de repetição enquanto/faca.
Justificativa: Resposta correta: Pares de 10 a 100, utilizando a estrutura de repetição
enquanto/faca. Correta. A variável i é inicializada com o valor 10. Na sequência, existe uma
estrutura de repetição enquanto/faca que testará se i é menor do que 102. Como a resposta é
verdadeira, escreverá na tela o valor de i (que é igual a 10), adicionará 2 na variável i e voltará a
testar se i é menor do que 102. Agora o valor de i é 12, continuando a ser menor do que 102 e
permitindo escrever o valor de i na tela. Assim, o processo se repetirá até que i seja igual a 102.
Nesse momento, a estrutura de repetição será desfeita sem escrever o valor de i na tela. Portanto,
após o final do algoritmo, a tela mostrará os números pares de 10 até 100. 
Distratores:Pares de 11 a 102, utilizando a estrutura de repetição enquanto/faca. Errada. A
estrutura de repetição enquanto/faca irá desarmar quando i for igual a 102. Assim, o
pseudocomando escreva (i:4) não será executado e o 102 não será mostrado na tela.Pares de 12 a
100, utilizando a estrutura de repetição enquanto/faca. Errada. O primeiro valor a ser escrito na
tela será 10 porque este é o valor inicial da variável i antes de ser incrementada de 2. Após a
execução do algoritmo, serão mostrados na tela os números pares de 10 a 100 e não os números
sequenciais de 12 a 100. Pares de 10 a 102, utilizando estrutura de repetição
enquanto/faca. Errada. A estrutura de repetição enquanto/faca irá desarmar quando i for igual a
102. Assim, o comando escreva (i:4) não será executado e o 102 não será mostrado na tela. Após a
execução do algoritmo serão mostrados na tela os números pares de 10 a 100 e não os números
sequenciais de 10 a 102.Pares de 12 a 102, utilizando estrutura de repetição enquanto/faca.
Errada. O primeiro valor a ser escrito na tela será 10 porque este é o valor inicial da variável i
antes de ser incrementada de 2. Outro aspecto é que a estrutura de repetição enquanto/faca irá
desarmar quando i for igual a 102. Assim, o pseudocomando escreva (i:4) não será executado e o
102 não será mostrado na tela.
1,50/ 1,50
7  Código: 38030 - Enunciado: Um dos recursos disponíveis na Linguagem C é a possibilidade de
fazer manipulação com strings. A biblioteca string.h contém funções para usos diversos, como:
tamanho da string, comparação entre strings e localização de um caractere dentro da string,
entre outras. Diante do exposto, identifique a função/operador utilizado quando se quer
comparar cadeias de caracteres dentro da Linguagem C.
 a) strchr.
 b) strlen.
 c) ==.
 d) strcpy
 e) strcmp.
Alternativa marcada:
1,00/ 1,00
e) strcmp.
Justificativa: Resposta correta:strcmp. Correta. A função strcmp compara as duas strings e
retorna um número inteiro. Quando esse número é 0 (zero) é porque as strings são iguais.  
Distratores:strlen. Errada. A função strlen retorna o número de caracteres que a string possui. ==.
Errada. Trata-se de um operador relacional de igualdade. Por exemplo: x == y significa x é igual a
y?strchr. Errada. A função strchr localiza a primeira ocorrência do caractere na string ou retorna
NULL se não for encontrado. strcpy. Errada. A função strcpy copia a string de origem na string
destino.
8  Código: 37689 - Enunciado: Temos, a seguir, um programa em Linguagem C que chama uma
função para saber se o número informado é um número par, ímpar ou negativo. 
#include<stdio.h>#include<string.h>main(){char nome[30]; int x, t;printf("\n\n DIGITE UM NOME:
");gets(nome); // suponha que o nome digitado foi "PEDRO"t = strlen(nome);for(x=t-1; x>=0; x--)
{printf("%c", nome[x]);printf("\n\n");}} 
Com base na implementação do programa desenvolvido em linguagem de programação C,
teremos um devido resultado a ser apresentado na execução da linha printf("%c", nome[x]);, que
poderá ser observado na análise do código. Utilize seus conhecimentos em lógica de
programação para definir a exibição da letra assertiva na execução do programa após a última
execução da linha printf("%c", nome[x]);
 a) e.
 b) d.
 c) r.
 d) p.
 e) o.
Alternativa marcada:
d) p.
Justificativa: Resposta correta:p. Correta. O programa será executado de trás para frente. Com
isso, ao iniciar a estrutura de repetição a primeira letra a ser lida e exibida será o "o" e a última
letra a ser lida e exibida será o "p".   
Distratores:o, e, d, r. Incorretas. O programa será executado de trás para frente, ou seja, em
ordem invertida por conta da estrutura de decisão montada. Com isso, ao iniciar a execução da
estrutura de repetição a primeira letra a ser lida e exibida será o "o" e a última letra a ser lida
dentro da estrutura de repetição do For a ser exibida será o "p".  Ressalta-se que a estrutura irá
executar cinco vezes, começando a leitura pela letra "o" e a última letra a ser lida só poderá ser o
"p". 
1,50/ 1,50

Continue navegando