Baixe o app para aproveitar ainda mais
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",¬a1); printf("Digite a segunda nota: "); scanf("%f",¬a2); ____________; 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).
Compartilhar