Buscar

2 exercicios estruturas de decisao e repeticao ampli

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

18/01/2022 Primeiro Caderno - Evernote
https://www.evernote.com/client/web?login=true#?b=5ac9b6e0-84a0-4170-a6dc-a5efbf353acc&n=50a8153b-16c5-2d80-d3f2-a0e909634750& 1/5
UNIDADE 2 - Estruturas de Decisão e Repetição
UNIDADE 2 - Estruturas de Decisão e Repetição
Questão 1
Conforme Forbellone e Eberspächer (2000), os operadores relacionais são utilizados para realizar 
comparações entre dois valores de um mesmo tipo. Esses valores podem ser representados por variáveis 
ou constantes. A uma comparação realizada utilizando um operador relacional dá-se o nome de relação. O 
resultado obtido de uma relação é sempre um valor lógico, ou seja, o valor será verdadeiro ou falso.
 
Observe o trecho de um programa que demonstra o uso de dois 
ifʼs sequenciais ou encadeados.
 
if (num>=0)
 if(num%2==0)
 printf(“O número é par e é positivo. \n”);
Os operadores lógicos podem ser utilizados para otimizar os comandos de seleção, levando em 
consideração o trecho de programa apresentado, a alternativa que otimiza o comando if com a utilização 
de operadores lógicos é:
Questão 2
if ((num>=0) != (num%2==0))
 printf (“O número é positivo e é par. \n”);
Revisar Questão
if ((num>=0) OR (num%2==0))
 printf (“O número é positivo e é par. \n”);
Revisar Questão
if ((num>=0) && (num%2==0))
 printf (“O número é positivo e é par. \n”);
if ((num>=0) AND (num%2!=0))
 printf (“O número é positivo e é par. \n”);
if ((num>=0) || (num%2==0))
 printf (“O número é positivo e é par. \n”);
18/01/2022 Primeiro Caderno - Evernote
https://www.evernote.com/client/web?login=true#?b=5ac9b6e0-84a0-4170-a6dc-a5efbf353acc&n=50a8153b-16c5-2d80-d3f2-a0e909634750& 2/5
Chama-se de estruturas de decisão encadeadas, quando uma estrutura de decisão está localizada dentro 
do lado falso da outra. Este tipo de estrutura também é conhecida como seleção “aninhada” ou seleção 
“encaixada”. Qualquer que seja o termo usado para identificar a estrutura, o importante é que esse formato 
com uma estrutura de seleção dentro da outra permite fazer a escolha de apenas um entre vários 
comandos possíveis. A figura 2 a seguir mostra uma tela após execução de uma estrutura de decisão 
encadeada:
 
Figura 2 – tela após execução de uma estrutura de decisão encadeada
Em linguagem C usa-se estruturas if-else-if encadeadas para construir códigos equivalentes. Analise o 
programa a seguir e complete as lacunas:
 
#include <stdio.h>
#include ____________
int main (void)
{
 int N1, N2 ;
 printf("Digite o primeiro numero: ");
 _____________
 printf("Digite o segundo numero: ");
 scanf("%d", &N2);
 
 _____________
 printf("Os numeros são iguais!");
 else
 if (N1 > N2)
 printf("O maior valor e = %d", N1);
 ____________
 printf("O maior valor e = %d", N2);
 
 printf("\n");
 system("pause");
 ____________
}.
Assinale a alternativa que completa corretamente as lacunas:
18/01/2022 Primeiro Caderno - Evernote
https://www.evernote.com/client/web?login=true#?b=5ac9b6e0-84a0-4170-a6dc-a5efbf353acc&n=50a8153b-16c5-2d80-d3f2-a0e909634750& 3/5
Questão 3
Observe o trecho de programa a seguir e julgue as afirmações que se seguem.
 
#include <stdio.h>
void main ()
{
int num[5];
printf(“Entre com um numero\n”);
scanf(“%d”, &num[0]);
printf(“O valor digitado foi: %d”, num [0]*2);
getchar();
}
I. Segundo Manzano (2010), vetor (array) é um tipo especial de variável capaz de armazenar diversos 
valores “ao mesmo tempo”.
II. O vetor usa vários endereços na memória.
III. Por armazenar diversos valores, também é chamado de variável aleatória, ou ainda, estrutura de 
matricial de valores.
IV. A sintaxe para utilização de vetores homogêneos é: tipo variavel [n]. Na sintaxe, “[n]” representa a 
quantidade de vetores alocados.
É correto apenas o que se afirma em:
 
Questão 4
O laço for é uma estrutura de repetição muito utilizada nos programas em C É muito útil quando se sabe de
<stdlib.h> / scanf("%d", &N1); / if (N1 == N2) / else / return (0);
h> / scanf("%d", &N1); / else (N1 == N2) / else / return (0);
<stdlib.h> / scanf("%d", %N1); / if (N1 == N2) / if / return (0);
<stdlib.h / ("%d", &N1); / if (N1 == N2) / else / return (0);
<stdlib.h> / scan("&d", &N1); / else (N1 == N2) / if / return (0);
I.
II.
I e IV.
III e IV.
II e III.
18/01/2022 Primeiro Caderno - Evernote
https://www.evernote.com/client/web?login=true#?b=5ac9b6e0-84a0-4170-a6dc-a5efbf353acc&n=50a8153b-16c5-2d80-d3f2-a0e909634750& 4/5
O laço for é uma estrutura de repetição muito utilizada nos programas em C. É muito útil quando se sabe de 
antemão quantas vezes a repetição deverá ser executada. Este laço utiliza uma variável para controlar a 
contagem do loop, bem como seu incremento. O trecho de programa a seguir exemplifica o comando:
 
#include <stdio.h>
#include <conio.h>
int main(void)
{
int contador;
for(contador = 1; contador <= 10; contador++)
{
printf("%d ", contador);
}
getch();
return(0);
}
 
Considerando o código apresentado, julgue as afirmações que se seguem
I. Primeiramente o contador foi inicializado com um valor igual a 0.
II. Depois foi testado se a condição que envolve o contador é verdadeira (contador <= 10).
III. A cada nova repetição a variável do contador foi decrementada.
É correto apenas o que se afirma em:
Questão 5
O comando do-while é uma estrutura de repetição que garante que o bloco de instruções seja executado no 
mínimo uma vez, já que a condição que controla o laço é testada apenas no final do comando. Ou seja, 
usando do-while, o bloco de comandos é executado pelo menos uma vez de forma obrigatória, 
independente do resultado da expressão lógica.
 
Analise o trecho de programa a seguir e complete corretamente as lacunas:
#include<stdio.h>
int main(void)
{
I.
III.
II.
I e II.
II e III.
18/01/2022 Primeiro Caderno - Evernote
https://www.evernote.com/client/web?login=true#?b=5ac9b6e0-84a0-4170-a6dc-a5efbf353acc&n=50a8153b-16c5-2d80-d3f2-a0e909634750& 5/5
____________;
int resp;
____________
{
printf("Digite a primeira nota: ");
scanf("%f",&nota1);
printf("Digite a segunda nota: ");
scanf("%f",&nota2);
____________;
printf("Media do aluno = %f\n",media);
printf("Digite 1 para continuar ou 2 para sair\n");
____________;
_____________;
return 0;
}
Assinale a alternativa que completa corretamente as lacunas:
float nota1=0,nota2=1,media=0 / do / media = (nota1 + nota2)/2 / scanf("%s", &resp) / }while (resp==1).
float nota1=0,nota2=0,media=0 / while / media = (nota1 + nota2)/2 / scanf("%d", &resp) / }do 
(resp==1).

Continue navegando