Buscar

ALGORITMOS Exercicios Aula 8 2

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 8 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

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 6, do total de 8 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

ALGORITMOS 
8a aula 
 
Exercício: CCT0749_EX_A8_
Aluno(a): EDOARDO ULYSSES FONTOURA 
KRAUSE JUNIOR 
Disciplina: CCT0749 - ALGORITMOS
 
 
 1a Questão 
 
Para que a palavra "AMOR" seja escrita na tela 5 vezes, qual condição 
apropriada deve ser colocada no trecho de código abaixo? Marque a opção 
correta. 
 
x = 1; 
while ( _________ ) 
{ 
cout<<"AMOR \n"; 
x = x + 2; 
} 
 
 x > 10 
 x <= 11 
 x < 10 
 x < 5 
 x <= 5 
 
Explicação: 
Analisando : 
 
x = 1; 
while ( _________ ) 
{ 
cout<<"AMOR \n"; 
x = x + 2; 
} 
Note que x é um contador que é inicializado com 1 e que varia de 2 em 2. 
Logo, é preciso testar x <
x vale 1 
x vale 3 
x vale 5 
x vale 7 
x vale 9 
E quando x for para 11, o teste do loop falhará. Então, teremos entrado 5 
vezes no bloco do while.
 
 
Lupa 
 
 
 
 
Vídeo 
 
CCT0749_EX_A8__V2 04/11/2018 21:49:24
EDOARDO ULYSSES FONTOURA 
ALGORITMOS 
Para que a palavra "AMOR" seja escrita na tela 5 vezes, qual condição 
apropriada deve ser colocada no trecho de código abaixo? Marque a opção 
Note que x é um contador que é inicializado com 1 e que varia de 2 em 2. 
x < 10. Veja que entraremos no loop quando
E quando x for para 11, o teste do loop falhará. Então, teremos entrado 5 
vezes no bloco do while. 
 
 
 
PPT 
 
MP3 
 
 
 
04/11/2018 21:49:24 
(Finalizada) 
2018.3 EAD 
 
 
 
 Para que a palavra "AMOR" seja escrita na tela 5 vezes, qual condição 
apropriada deve ser colocada no trecho de código abaixo? Marque a opção 
Note que x é um contador que é inicializado com 1 e que varia de 2 em 2. 
Veja que entraremos no loop quando : 
E quando x for para 11, o teste do loop falhará. Então, teremos entrado 5 
 
 
 2a Questão 
 
 
 Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao 
usuário: 
int main ( ) { 
 int i = 0; 
 double x, y = 0; 
 cout << "Digite um numero: "; 
 cin >> x; 
 while (x != 0){ 
 i = i + 1; 
 y = y + x; 
 cout << "Digite um numero: "; 
 cin >> x; 
 } 
 y = y / i; 
 cout << "Numero: " << y << "\n"; 
 system("PAUSE"); 
 return 0; 
} 
 
 O maior de todos os elementos digitados 
 A quantidade de elementos pares 
 A média dos elementos digitados 
 O menor de todos os elementos digitados 
 A quantidade de elementos digitados 
 
 
Explicação: 
 int i = 0; //inicializa a quantidade de elementos digitados diferentes de 
zero 
 double x, y = 0; // y inicializa o somatorio dos valores de entrada 
 cout << "Digite um numero: "; 
 cin >> x; //Lê o primeiro valor 
 while (x != 0){ //Enquanto o valor de entrada não for zero 
 i = i + 1; //conta mais um número lido 
 y = y + x; //acumula o valor de x em y, gerando o somatório dos 
números lidos e armazenados em x 
 cout << "Digite um numero: "; 
 cin >> x; //Lê o proóximo número 
 } 
 y = y / i; //Divide a soma dos números lidos não nulos por i ( i é o total 
de números lidos não nulos) 
 cout << "Numero: " << y << "\n"; //Imprime a média armazenada em y 
Logo : O programa calcula a média dos números digitados (diferente de zero) 
 
 
 
 3a Questão 
 
 
 Assinale a opção que corresponde à condição da estrutura de repetição que 
faz com que o programa abaixo imprima 4 vezes a expressão Bom dia. 
int a = 8; 
while ( ____ ) 
 { 
 cout << "Bom dia\n"; 
 a = a -2; 
} 
 
 a > 0 
 a == 0 
 a <= 0 
 a >= 0 
 a < 0 
 
 
Explicação: 
Analisando o trecho temos que : 
• a variável a funciona como contador e começa com 8. 
• a variável a varia de 2 em 2. Assim : 
o quando a é 8 imprime-se Bom dia 
o quando a é 6 imprime-se Bom dia 
o quando a é 4 imprime-se Bom dia 
o quando a é 2 imprime-se Bom dia 
o quando a for zero não se pode mais imprimir Bom dia, pois já se 
imprimiu 4 vezes, como visto acima. 
Logo, a opção certa é : a > 0, pois quando a for zero, a repetição irá terminar. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 4a Questão 
 
 
 A fim de possibilitar a implementação de algoritmos estudamos 
algumas estruturas básicas, como estrutura de desvio de fluxo, 
estrutura de repetição etc. Entre as estrutura de repetição há uma na 
qual uma ação será executada pelo menos uma vez, antes da 
avaliação da condição. Esta estrutura é implementada em C++ pelo 
comando básico: 
 
 for 
 do/while 
 for/while 
 while 
 do/for 
 
Explicação: 
O comando do...while faz para depois testar. Então, o bloco a ser repetido 
será executado pelo menos uma vez antes de testarmos a condição. 
Os comando for ou while, temos que testar antes de fazer. 
 
 
 
 
 
 5a Questão 
 
 
 Assinale a alternativa correta em relação a quantidade de vezes que a palavra 
"PAZ" será impressa, no trecho de código abaixo: 
 
x = 50; 
do{ 
y = 8; 
do{ 
cout<<"PAZ \n"; 
y++; 
} while ( y <10); 
x--; 
}while ( x > 48); 
 
 7 vezes 
 6 vezes 
 4 vezes 
 5 vezes 
 8 vezes 
 
Explicação: 
Analisando passo a passo o trecho dado : 
x = 50; 
do{ 
 y = 8; 
 do{ 
 cout<<"PAZ \n"; 
 y++; 
 } while ( y <10); 
 x--; 
} while ( x > 48); 
 x y 
50 8 
49 9 
48 (48 > 48 ? ) Falso 10 ... 10 < 10 ? FALSO 
 8 
 9 
 10 ... 10 < 10 ? Falso 
PAZ 
PAZ 
PAZ 
PAZ 
 
 
 
 6a Questão 
 
A partir da comparação entre as estruturas while e do...while, é certo afirmar 
que: 
 
 Em termos de execução não há diferença. A diferença está, apenas, na 
sintaxe. 
 
No while, o bloco de comandos controlado poderá não ser executado. 
Enquanto que no do...while o bloco de comandos controlado será sem
executado, pelo menos uma vez.
 No do...while, o bloco de comandos controlado poderá não ser 
executado. Enquanto que no while o bloco de comandos será sempre 
executado, pelo menos uma vez.
 Dependendo da condição de teste, em ambos os casos o bloco de 
comandos controlado será sempre executado, pelo menos uma vez.
 Dependendo da condição de teste, em ambos os casos o bloco de 
comandos controlado poderá não ser executado.
 
 
Explicação: 
Falso. No do/while primeiro se 
faz o que está no corpo do loop 
para depois testar e no while, se 
testa para depois fazer o queestá 
no corpo do loop. 
 
Falso. No do/while o bloco de 
instruções será feito pelo menos 1 
vez. 
 
 Verdadeiro 
 
Falso. No while pode não ser 
executado nenhuma vez.
 
Falso. No do/while as instruções 
serão feitas pelo menos 1 vez.
 
 
 
A partir da comparação entre as estruturas while e do...while, é certo afirmar 
termos de execução não há diferença. A diferença está, apenas, na 
No while, o bloco de comandos controlado poderá não ser executado. 
Enquanto que no do...while o bloco de comandos controlado será sem
executado, pelo menos uma vez. 
No do...while, o bloco de comandos controlado poderá não ser 
executado. Enquanto que no while o bloco de comandos será sempre 
xecutado, pelo menos uma vez. 
Dependendo da condição de teste, em ambos os casos o bloco de 
comandos controlado será sempre executado, pelo menos uma vez.
Dependendo da condição de teste, em ambos os casos o bloco de 
comandos controlado poderá não ser executado. 
No do/while primeiro se 
faz o que está no corpo do loop 
para depois testar e no while, se 
testa para depois fazer o queestá 
Em termos de execução não há 
diferença. A diferença está, apenas, na 
sintaxe. 
Falso. No do/while o bloco de 
instruções será feito pelo menos 1 
No do...while, o bloco de comandos 
controlado poderá não ser executado. 
Enquanto que nowhile o bloco de 
comandos será sempre executado, pelo 
menos uma vez. 
No while, o bloco de comandos 
controlado poderá não ser executado. 
Enquanto que no do...while o bloco de 
comandos controlado será sempre 
executado, pelo menos uma vez.
No while pode não ser 
executado nenhuma vez. 
Dependendo da condição de teste, em 
ambos os casos o bloco de comandos 
controlado será sempre executado, pelo 
menos uma vez. 
Falso. No do/while as instruções 
serão feitas pelo menos 1 vez. 
Dependendo da condição de teste, em 
ambos os casos o bloco de comandos 
controlado poderá não ser executado
 
 A partir da comparação entre as estruturas while e do...while, é certo afirmar 
termos de execução não há diferença. A diferença está, apenas, na 
No while, o bloco de comandos controlado poderá não ser executado. 
Enquanto que no do...while o bloco de comandos controlado será sempre 
No do...while, o bloco de comandos controlado poderá não ser 
executado. Enquanto que no while o bloco de comandos será sempre 
Dependendo da condição de teste, em ambos os casos o bloco de 
comandos controlado será sempre executado, pelo menos uma vez. 
Dependendo da condição de teste, em ambos os casos o bloco de 
Em termos de execução não há 
diferença. A diferença está, apenas, na 
No do...while, o bloco de comandos 
controlado poderá não ser executado. 
Enquanto que no while o bloco de 
comandos será sempre executado, pelo 
No while, o bloco de comandos 
controlado poderá não ser executado. 
Enquanto que no do...while o bloco de 
comandos controlado será sempre 
executado, pelo menos uma vez. 
Dependendo da condição de teste, em 
ambos os casos o bloco de comandos 
controlado será sempre executado, pelo 
pendendo da condição de teste, em 
ambos os casos o bloco de comandos 
controlado poderá não ser executado 
 
 7a Questão 
 
 
 O que está sendo executado pelo programa C++ a seguir? 
 
int main() 
{ 
 int CONT, SOMA; 
 CONT = 0; 
 SOMA = 0; 
 while (CONT < 50) 
 { 
 SOMA = SOMA + CONT; 
 CONT = CONT + 2; 
 } 
} 
 
 Soma todos os números pares de 0 a 48 
 Soma todos os números de 0 a 49 
 Soma todos os números ímpares de 0 a 49 
 Soma todos os números pares de 0 a 50 
 Soma os 50 números pares digitados. 
 
 
Explicação: 
Analisando o trecho em C++ : 
int main() 
{ 
 int CONT, SOMA; 
 CONT = 0; 
 SOMA = 0; 
 while (CONT < 50) 
 { 
 SOMA = SOMA + CONT; 
 CONT = CONT + 2; 
 } 
} 
CONT SOMA CONT < 50 
0 0 0 < 50 ? SIM 
2 0 2 < 50 ? SIM 
4 2 ... 
... 50 .... 50 < 50 ? FALSO 
O trecho soma os valores de CONT até 48, sendo que tal variável varia de 2 
em 2. Ou seja, a variável SOMA acumula os valores de CONT de 0 ATÉ 48, 
somando os valores pares neste intervalo. Note que o teste do loop pára 
quando CONT assume o valor 50. 
 
 
 
 
 8a Questão 
 
 
 Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao 
usuário: 
int main ( ) { 
 int i = 0; 
 double x, y = 0; 
 cout << "Digite um numero diferente de zero : "; 
 cin >> x; 
 while (x != 0){ 
 i = i + 1; 
 y = y + x; 
 cout << "Digite um numero diferente de zero: "; 
 cin >> x; 
 } 
 y = y / i; 
 cout << "Numero: " << i << "\n"; 
 return 0; 
} 
 
 O menor de todos os elementos digitados 
 A quantidade de elementos digitados diferentes de zero. 
 O maior de todos os elementos digitados 
 A quantidade de elementos pares 
 A média dos elementos digitados 
 
 
Explicação: 
A condição para entrar no loop e contar é x ser diferente de zero. O que será 
exibido ao final do programa é a quantidade i calculada. 
Note que o primeiro valor de x digitado é testado, então entra-se no loop e 
logo depois, este valor é contado através do uso de i que é incrementado. 
Claro que x é manipulado, tendo seu valor somado com o valor de y, mas ao 
final do programa a quantidade i é impressa. Se o valor zero for digitado, ele 
não será contado.

Continue navegando