Buscar

CCT0825 - Teste de conhecimento - Aula 7

Prévia do material em texto

1.
		Assinale a alternativa correta em relação a quantidade de vezes que a palavra "ALGORITMO" será impressa, no trecho de código abaixo:
cont = 0;
while( cont < 30 ) {
   cout << "ALGORITMO" << endl;
   cont = cont + 1;
}
	
	
	
	15
	
	
	31
	
	
	29
	
	
	Nenhuma das alternativas.
	
	
	30
	
Explicação:
Fazendo passo a passo :
cont = 0;
while( cont < 30 ) {
   cout << "ALGORITMO" << endl;
   cont = cont + 1;
}
	variável cont
	Teste cont < 30 ? Sim ou não ?
	0
	0 < 30 ? sim
	1
	1 < 30 ? sim
	2
	2 < 30 ? Sim
	3
	3 < 30 ? Sim
	4
	4 < 30 ? Sim
	5
	5 < 30 ? sim
	6
	6 < 30 ? sim
	7
	7 < 30 ? sim
	continuando até 29 
	 29  < 30 ? Sim
	30
	30 < 30 ? Não. Falso.  Não entra no while
Note que entrou 30 vezes no corpo do while e a cada vez que entrou imprimiu ALGORITMO
TELA
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
>>>>>>>>>>>>>>>>>>  Logo, imprimiu 30 vezes a palavra   ALGORITMO
 
	
	
	
	 
		
	
		2.
		Uma turma precisa escolher seu representante. Sabendo que existem apenas dois candidatos, identificados pelas letras A e B, imagine que você precisa escrever um programa em C++ que receba o número do aluno e o candidato por ele escolhido e contabilize os votos de cada um. A leitura de votos será finalizada quando o número do aluno informado for 0. Contabilize também os votos nulos, que são aqueles diferentes de A ou B. Ao final, é preciso exibir o candidato vencedor, os votos para o candidato A, os votos para o candidato B e os votos nulos. Qual das alternativas a seguir apresenta o trecho de código adequado à solução desse problema?
	
	
	
	cout<< "Digite o número do aluno: "; cin>> num;
do (num!=0) {
  cout<< "Digite a letra de seu candidato: "; cin>> voto;
  if (voto == A)
    { contA++; }
  else if (voto == B)
    { contB++; }
  else
  { contN++; }
  cout<< "Digite o número do aluno: ";
  cin>> num;
}
	
	
	cout<< "Digite o número do aluno: "; cin>> num;
while (num!=0) {
  cout<< "Digite a letra de seu candidato: "; cin>> voto;
  if (voto == A)
    { contA++; }
  else if (voto == B)
    { contB++; }
  else
  { contN++; }
  cout<< "Digite o número do aluno: ";
  cin>> num;
}
	
	
	cout<< "Digite o número do aluno: "; cin>> num;
while (num!=0) {
  cout<< "Digite a letra de seu candidato: "; cin>> voto;
  case (voto == A)
    { contA++; }
  case (voto == B)
    { contB++; }
  case
  { contN++; }
  cout<< "Digite o número do aluno: ";
  cin>> num;
}
	
	
	cout<< "Digite o número do aluno: "; cin>> num;
for (num!=0) {
  cout<< "Digite a letra de seu candidato: "; cin>> voto;
  if (voto == A)
    { contA++; }
  else if (voto == B)
    { contB++; }
  else
  { contN++; }
  cout<< "Digite o número do aluno: ";
  cin>> num;
}
	
	
	cin<< "Digite o número do aluno: "; cout>> num;
do while (num!=0) {
  cin<< "Digite a letra de seu candidato: "; cout>> voto;
  if (voto == A)
    { contA++; }
  else if (voto == B)
    { contB++; }
  else
  { contN++; }
  cin<< "Digite o número do aluno: ";
  cout>> num;
}
	
	
	
	 
		
	
		3.
		Sobre a estrutura com pós-teste, julgue as assertivas a seguir Verdadeiras ou Falsas:
(   ) Avalia somente uma condição por vez, tendo essa que ser do tipo relacional ou matemático.
(   ) Trata-se de uma estrutura de seleção capaz de restringir a execução de determinado trecho do código;
(   ) É uma estrutura do tipo repetitiva, que precisa de uma condição que controle quando o trecho deve se repetir;
 
	
	
	
	V - F - V
	
	
	V - F - F
	
	
	F - F - V
	
	
	F - V - V
	
	
	F - F - F
	
	
		4.
		A linguagem de programação C++ dispõe de três estruturas de repetição: do..while, while e for. Pensando na maneira como cada uma delas funciona, observe o trecho de código a seguir:
Qual das alternativas a seguir, escritas com a estrutura for, equivale à estrutura while anterior?
	
	
	
	for (int cont=0; cont <= 10; cont+=2)
{  cout << "Estamos na " << cont << "a. rodada..."; }
	
	
	for (int cont=10; cont <= 0; cont++)
{  cout << "Estamos na " << cont << "a. rodada..."; }
	
	
	for (int cont=0; cont <= 10; cont++)
{  cout << "Estamos na " << cont << "a. rodada..."; }
	
	
	for (int cont=10; cont <= 200; cont+=2)
{  cout << "Estamos na " << cont << "a. rodada..."; }
	
	
	for (cont++; cont <= 10; int cont=0)
{  cout << "Estamos na " << cont << "a. rodada..."; }
	
	
	
	 
		
	
		5.
		Considere que uma refeição saudável envolve o consumo máximo de 550 calorias. Sabendo disso, você deseja escrever um programa que, a partir da quantidade de calorias consumidas em uma refeição, informe se você ultrapassou esse valor ou permaneceu dentro do limite. Para fazer o cálculo do consumo total, você precisará que seja digitado o valor calórico de cada elemento. Como não se sabe exatamente quantos alimentos diferentes foram consumidos, considere que será digitado 0 quando não houver mais consumo a ser informado. Ao final do programa, é necessário exibir o consumo total de calorias e informar se foi ultrapassado o valor sugerido por refeição, se o usuário permaneceu dentro do limite ou se consumiu exatamente a quantidade de calorias sugerida. Qual das alternativas a seguir apresenta a estrutura repetitiva adequada para este problema? 
 
	
	
	
	while (cont!=0) {
  cont++; totCalorias+=0;
  cout<< "Informe as calorias do alimento " << cont <<": ";
  cin>> calAlimento;
}
	
	
	do (calAlimento!=0) {
  cont++; totCalorias+=calAlimento;
  cout<< "Informe as calorias do alimento " << cont <<": ";
  cin>> calAlimento;
}
	
	
	for (calAlimento!=0) {
  cont++; totCalorias+=calAlimento;
  cout<< "Informe as calorias do alimento " << cont <<": ";
  cin>> calAlimento;
}
	
	
	while (calAlimento!=0) {
  cont++; totCalorias+=calAlimento;
  cout<< "Informe as calorias do alimento " << cont <<": ";
  cin>> calAlimento;
}
	
	
	while (calAlimento!=0) {
  cont++; totCalorias+=calAlimento;
  cin<< "Informe as calorias do alimento " << cont <<": ";
  cout>> calAlimento;
}
	
	
	
	 
		
	
		6.
		Imagine que , com base na sintaxe do Portugol Studio, você precisa escrever um algoritmo que receba uma sequência de números e, para cada número informado, diga se ele é par ou ímpar. A sequência se encerra quando o usuário digitar 0. Considerando que é necessário utilizar uma estrutura repetitiva com pré-teste, qual das alternativas a seguir ajuda a resolver o problema proposto?
	
	
	
	faca {
  se (num%2==0)
  { escreva("Este número é par!\n") }
  senao
  { escreva("Este número é ímpar!\n") }
  escreva("Informe um número qualquer: ")
  leia(num)
} enquanto (num!=0)
	
	
	enquanto (num==0) {
  se (num/2==0)
  { escreva("Este número é par!\n") }
  senao
  { escreva("Este número é ímpar!\n") }
  escreva("Informe um número qualquer: ")
  leia(num)
}
	
	
	enquanto (num>0) {
  se (num%2!=0)
  { escreva("Este número é par!\n") }
  senao
  { escreva("Este número é ímpar!\n") }
  escreva("Informe um número qualquer: ")
  leia(num)
}
	
	
	faca {
  se (num%2!=0)
  { escreva("Este número é par!\n") }
  senao
  { escreva("Este número é ímpar!\n") }
  escreva("Informe um número qualquer: ")
  leia(num)
} enquanto (num>0)
	
	
	enquanto (num!=0) {
  se (num%2==0)
  { escreva("Este número é par!\n") }
  senao
  { escreva("Este número é ímpar!\n") }
  escreva("Informe um número qualquer: ")
  leia(num)
}
	
	
	
	 
		
	
		7.
		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:
· quando a é 8 imprime-se  Bom dia (Logo após ele vai decaindo, ou seja a= a-2 --> a= 8-2 = 6)
· quando a é 6  imprime-se Bom dia (Logo após ele vai decaindo, ou seja a= a-2 --> a= 6-2 = 4)
· quando a é 4 imprime-se Bom dia  (Logo após ele vai decaindo, ou seja a= a-2 --> a= 4-2 = 2)
· quando a é 2 imprime-se Bom dia  (Logo após ele vai decaindo, ou seja a= a-2 --> a= 2-2 = 4) porém como já imprimiu 4 vezes ele para.
· 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=0), a repetição irá terminar.
Lembrando que a não pode ser 0 pois já terá impresso 4 vezes bom dia.
	
	
	
	 
		
	
		8.
		Considerando a seguinte sequencia de instruções, marque a alternativa que indica o comando correspondente para preenchimento da lacuna.
...
cin>>matricula;
______________ (matricula<99)
{
cin>>matricula;
}
	
	
	
	do case
	
	
	loop
	
	
	while
	
	
	repeat
	
	
	for
	
Explicação:
	 
	Falso. Nâo tem repeat em C++.
	repeat
	 
	Falso.  Não se encaixa a sintaxe do comando for.
	for
	 
	 Verdadeiro
	while
	 
	 Falso. Não existe comando do... case.
	do case
	 
	Falso.  Nâo existe comando loop.
	loop

Continue navegando