Buscar

CCT0825 - Teste de conhecimento - Aula 5

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 6 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 6 páginas

Prévia do material em texto

1.
		Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que aprecem na tela.
int x = 13, y = 4, z;
if( x > y ) { z = x; x = y; y = z; }
cout << z << " " << x << " " << y ;
	
	
	
	0 13 4
	
	
	4 13 13
	
	
	13 13 4
	
	
	0 4 13
	
	
	13 4 13
	
Explicação:
Fazendo um teste de mesa  através de comentários no trecho dado :
int x = 13, y = 4, z;           // x recebe 13 e y recebe 4     
if( x > y )           //testa se 13 é maior que 4 ... É verdade. Então, entra no bloco do if
{
   z = x;         // z recebe x, que vale 13. Ou seja, z recebe 13
   x = y;       // x recebe y, que é 4.   Ou seja, x recebe 4
  y = z;       // y recebe z, que vale 13. Ou seja, y recebe 13
}
cout << z << " " << x << " " << y ;  //SErá impresso  :    13  4  13
 
 
	
	
		2.
		Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que aprecem na tela.
int x = 4, y = 14, t;
float z;
if( x < y ) { t=x; x=y; y=t;}
z = (x % y) / y;
cout << x << " " << y << " " << z ;
	
	
	
	14 4 0.5
	
	
	4 14 0.5
	
	
	4 14 0
	
	
	0.5 4 14
	
	
	14 4 0
	
Explicação: O operador / quando ambos são inteiros resulta em um quociente inteiro
	
	
		3.
		Para satisfazer a regra de que para fazer AV3 o aluno deve ter nota maior ou igual a 4 em pelo menos uma das outras duas Avaliacoes, qual seria a sentença correta
	
	
	
	Se (AV1 > 4) e (AV2 > 4)
	
	
	Se (AV1 > 4) ou (AV2 > 4)
	
	
	Se (AV1 >= 4) ou (AV2 >= 4)
	
	
	Se (AV1 >= 4) e (AV2 >= 4)
	
	
	Nenhuma outra alternativa satisfaz
	
Explicação:
	 
	Verdadeira
	Se (AV1 >= 4) ou (AV2 >= 4)
	 
	Falsa. Tinha que ser >= e não apenas >
	Se (AV1 > 4) ou (AV2 > 4)
	 
	FAlsa.  Nâo tem que ter 4 ou mais nas duas provas, mas apenas em uma das provas.
	Se (AV1 >= 4) e (AV2 >= 4)
	 
	FAlsa. Tinha que ser >=  e no lugar do e tinha que se ou.
	Se (AV1 > 4) e (AV2 > 4)
	 
	Falsa.  A 1a. alternativa é a correta. Ou seja : Se (AV1 >= 4) ou (AV2 >= 4)
	Nenhuma outra alternativa satisfaz
	
	
	
	
		4.
		Quando estudamos sobre a estrutura do se ... entao...senao, sempre nos é dito que, quando tivermos duas possibilidades de respostas, devemos escolher a estrutura do se composto ao invés de usar duas estruturas do se simples.
Observe as afirmativas abaixo e, depois, escolha a resposta que respalda o uso do se composto pelo que foi dito acima ao invés do se simples.
I Maior clareza no código, mas não influência na eficiência do mesmo
II Maior eficiência porque diminui o número de testes no código
III Maior eficiência somente porque o código fica mais legível, visto que o resultado final é o mesmo
IV Somente uma escolha do desenvolvedor, visto que o resultado o resultado final é o mesmo
	
	
	
	Somente a II está correta
	
	
	A II E A III estão corretas
	
	
	A II E IV estão corretas
	
	
	Somente a  IV está correta
	
	
	Somente a I está correta
	
Explicação:
I Maior clareza no código, mas não influência na eficiência do mesmo .             
Comentário :  Falso. Traz clareza e afeta a eficiência sim, pois acaba se fazendo testes desnecessários.
II Maior eficiência porque diminui o número de testes no código
Comentário : Correto.
III Maior eficiência somente porque o código fica mais legível, visto que o resultado final é o mesmo.
Comentário : Falso. Não é só legibilidade, mas é uma questão de eficiência, pois evita-se teste desnecessário.
IV Somente uma escolha do desenvolvedor, visto que o resultado o resultado final é o mesmo
Comentário : Falso.  O desenvolvedor pode escolher sim, mas o uso adequado do condicional composto pode trazer maior eficiência para o código.
Opção correta : 
    Somente a II está correta
	
	
		5.
		Considere o trecho de programa em C++. O que é impresso na tela ?
int x = 10, y = 3, z, k;
y = x + y - 1;
z = x/y;
k = y % x;
if ( k != 0)
cout << "x = " << x << " y = " << y << " z = " << z << " k = " << k << "\n";
	
	
	
	Nada é impresso na tela, pois k é zero.
	
	
	10 12 0.833 1.2
	
	
	x= 10 y = 12 z = 0 k = 2
	
	
	10 12 0 2
	
	
	x = 10 y = 12 z = 0.833 k = 1.2
	
Explicação:
É preciso fazer um teste de mesa ou chinês e encontrar a resposta correta, como indicado. Para isso, o conteúdo da aula 5 é suficiente, junto com declaração de variáveis de aula anterior.
int x = 10, y = 3, z, k; 
y = x + y - 1; 
z = x/y; 
k = y % x; 
if ( k != 0) 
cout << "x = " << x << " y = " << y << " z = " << z << " k = " << k << "\n"; 
 
Teste de mesa 
	x
	y
	z
	k
	10
	3
	 
	 
	 
	12
	0
	2
	 
	 
	 
	 
y recebe 10+3-1, que é 12. Logo, y recebe 12
z recebe x/y, que é 10/12 que dá zero.
k recebe 12%10, que dá 2.
Como k é diferente de 0 temos que será impresso :
x = 10  y = 12  z = 0  k = 2
	
	
		6.
		Considere o trecho de programa em C++. O que é impresso na tela ?
int x = 10, y = 3, z, k;
y = x + y - 1;
z = x/y;
k = y % x;
if (k == 0)
cout << "x = " << x << " y = " << y << " z = " << z << " k = " << k;
else
cout << x + 1 << " " << y - 1 << " " << z + 2 << " " << k - 2;
	
	
	
	x = 10 y = 12 z = 0.833 k = 0
	
	
	x = 10 y = 12 z = 0 k = 0
	
	
	10 12 2 0
	
	
	11 11 2 0
	
	
	x= 11 y = 11 z = 2 k = 0
	
Explicação:
É preciso fazer um teste de mesa ou chinês e encontrar a resposta correta, como indicado. Para isso, o conteúdo sobre comando condicional, atualmente, na aula 5,  é suficiente, junto com declaração de variáveis de aula anterior.
 
x recebe 10 e depois
y recebe 3 e depois y recebe 10+3-1, que dá 12
z recebe 10/12, que dá 0
k recebe 2
TEste do if é falso. Então, entra-se no else e é impresso :    11   11  2  0 
	
	
		7.
		Assinale a opção correta. O que será impresso na tela, respectivamente, após duas execuções seguidas,
sendo que na 1ª. execução o valor de entrada é 7 e na 2ª. execução o valor de entrada é 8.    Para isso, considere
o seguinte trecho em C++.
  int num;
  cout << "Digite um numero: ";
  cin >> num;
  if (num != 2 || num != 4 || num != 6)
  {
      num = num + 2;
      cout << num << " ";
  }
  if (num != 8)
  {
      num--;
      cout << num << " ";
  }
  else
     cout << num * 5 ;
 
	
	
	
	9   8    10   9
 
	
	
	8  10   40
 
	
	
	9   6   10    9
 
	
	
	9   8   10  40
 
	
	
	9  40
 
	
Explicação:
Analisando o trecho de programa em C++ ...
1a. execução : num recebe 7.  Daí, testamos o 1o. if.   Note que usamos o || lógico. A condição é verdadeira e entramos no bloco do 1o. if.  Então, num recebe 9 e é impresso o valor 9 na tela.
Seguimos para o próximo if e testamos sua condição.  É verdade que 9 != 8 ? Sim. Entramos no bloco do 2o. if e então decrementamos 9 para 8 e imprimimos o valor 8.
Concluindo esta 1a. execução :  Foram impressos 9 8
2a. execução : num recebe  8.  Daí, testamos o 1o. if.   Note que usamos o || lógico. A condição é verdadeira e entramos no bloco do 1o. if.  Então, num recebe 10 e é impresso o valor 10.
Seguimos para o próximo if e testamos sua condição.  É verdade que 10 != 8 ? Sim. Entramos no bloco do 2o. if e então decrementamos 10 para 9, imprimindo o valor 9.
Concluindo esta 2a. execução :  Foram impressos 10 9 
	
	
		8.
		Analise o programa abaixo e selecione a alternativa que contenha a condição correta para que o número 27 seja mostrado na tela.
 
#include
using namespace std;
int main()
{
int N1, N2;
N1= 27;
N2= 54;
if ( ______________ )
{
   cout<< N2;
}
else
{
   cout<< N1;
}
return 0;
}
	
	
	
	N1 < N2 && N1 < 50
	
	
	N2 > N1 || N1 > 50
	
	
	N1 < N2 && N1 > 20
	
	
	N1 > N2 || N2 < 50
	
	
	N2 == N1 || N2 > 20

Outros materiais