Buscar

Questões de Lógica de Programação em C++

Prévia do material em texto

1a Questão
	
	
	
	Qual dos trechos de código em C++ representa a seguinte situação:
Quero saber o salario líquido de um funcionário considerando que, dado o salário bruto, existe um desconto para o fundo de pensão de 1% caso o salário bruto seja maior que R$2000,00 e de 0,5% caso contrário.
		
	 
	if (bruto < 2000.00)
      liquido = bruto - (0.5 * bruto /100);
else
      liquido = bruto - (bruto/100);
cout << "Liquido = " << liquido;
	 
	if (bruto > 2000.00)
     liquido = bruto - (bruto/100);
else
     liquido = bruto - (0.5 * bruto /100);
cout << "Liquido = " << liquido;
	
	if (bruto > 2000.00)
     liquido = bruto - bruto/100;
else
     liquido = bruto - 0,5 * bruto /100;
cout << "Liquido = " << liquido;
	
	if (bruto > 2000.00)
then
     liquido = bruto - (bruto/100);
else
     liquido = bruto - (0.5 * bruto /100);
cout << "Liquido = " << liquido;
end
	
	if (bruto >= 2000.00)
     liquido = bruto/100;
else
     liquido = 0.5 * bruto /100;
cout << "Liquido = " << liquido;
	Respondido em 02/04/2020 19:17:46
	
Explicação:
Considerando o estudo de porcentagem em matemática e considerando a condição estabelecida no enunciado.
Note : não é possível usar vírgula como separador de decimais.
	
	
	 
	
	 2a Questão
	
	
	
	
	 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 é 10 e na 2ª. execução o valor de entrada é 0.    Para isso, considere o seguinte trecho em C++.
  int num;
  cout << "Digite um numero: ";
  cin >> num;
  if (num  > 0)
  {
      num++;
      cout << num << " ";
  }
  cout << num + 1 << " ";
  if (num < 0)
  {
      num--;
      cout << num << " ";
  }
  else
     cout << num * 10 ;
 
		
	
	11   110    1   0
 
	 
	11   12   110   1   0
 
	
	11  110  1 10
 
	
	11  110  1  0
 
	 
	11   12    110
 
	Respondido em 02/04/2020 19:22:16
	
Explicação:
Analisando ...
1a. execução  : Valor de entrada é 10. Logo, num recebeu 10 na entrada.
1o. teste >>>  10 > 0 ? Sim . Então, entramos no bloco do 1o. if e fazemos num receber 11. Depois, exibimos 11 na tela. Seguindo... é exibido o valor de num + 1, ou seja, é exibido na tela o valor 12. 
2o. teste >>> 11 < 0 ? Não. Então, entramos no último else que imprime o resultado de 11 * 10, que é 110
Concluindo a 1a. execução para a entrada 10 :           11  12  110
 
2a. execução :  Valor de entrada é 0.  Logo, num recebe 0 na entrada.
1o. teste >>> 0 > 0 ? Falso.  Não entramos no 1o. if. SEguindo em frente temos que o valor de num+1 é exibido na tela. Ou seja, 1 é exibido na tela.
2o. teste >>> 1 < 0 ? Não. Então, entramos no último else, que imprime o valor de 1 * 10, que é 10.
Concluindo a 2a. execução para a entrada 0 :     1   10
 
	
	
	 
	
	 3a Questão
	
	
	
	
	Verifique o trecho de código abaixo e marque a alternativa que apresenta a melhor construção para as condições abaixo, utilizando uma estrutura de decisão composta.
if(a > 0) cout < < "pertinente";
if(a < 5) cout < < "pertinente";
if(a > =5) cout < < " não pertinente";
		
	
	if(a > 0 + a < 5) cout < < "pertinente";
else cout < < "não pertinente";
	
	if(0 > a > 5) cout < < "pertinente";
else cout < < " não pertinente";
	
	if(a > 5 && a < 0) cout < < "pertinente"; else cout < < "não pertinente";
	 
	if(a > 0 && a < 5) cout < < "pertinente";
else cout < < " não pertinente";
	
	if(a > 0 || a < 5) cout < < "pertinente";
else cout < < " não pertinente";
	Respondido em 02/04/2020 19:23:14
	
Explicação: O trecho do código exibe a informação "pertinente" para os valores de a maior que zero e menores que cinco. E a informação "não pertinente", para valores de a iguais ou maiores que cinco. Portanto a condição correta é ; Se (a > 0 e a < 5) imprime "pertinente"; do contrário imprime " não pertinente";
	
	
	 
	
	 4a Questão
	
	
	
	
	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
		
	
	Nenhuma outra alternativa satisfaz
	
	Se (AV1 >= 4) e (AV2 >= 4)
	
	Se (AV1 > 4) e (AV2 > 4)
	 
	Se (AV1 >= 4) ou (AV2 >= 4)
	
	Se (AV1 > 4) ou (AV2 > 4)
	Respondido em 02/04/2020 19:23:56
	
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
	
	
	
	
	 
	
	 5a Questão
	
	
	
	
	Sobre a estrutura seletiva "se", pode-se afirmar que ela
(   ) permite que novas estruturas seletivas sejam definidas dentro dela;
(   ) restringe a execução de um trecho do código à veracidade, ou não, de uma ou mais condições;
(   ) não permite o teste de condições que combinem, na mesma expressão, operadores de tipos distintos;
		
	 
	V - V - F
	
	F - F - F
	 
	V - F - V
	
	F - V - F
	
	V - V - V
	Respondido em 02/04/2020 19:24:40
	
	
	 
	
	 6a Questão
	
	
	
	
	Examine as afirmativas a seguir e marque a alternativa correta.
I- A estrutura de decisão pode alterar ou desviar o fluxo natural de execução de um algoritmo.
II- O uso de uma estrutura de decisão composta pode ser mais eficiente que o uso de duas estruturas de decisão simples, pois reduz o número de testes.
III- Muitas vezes é possível combinar a condição de duas estruturas de decisão simples em apenas uma utilizando operadores lógicos.
		
	
	Todas as alternativas estão erradas.
	 
	Todas as alternativas estão corretas.
	
	Apenas a alternativa iii está correta.
	
	Apenas a alternativa i está correta.
	
	Apenas a alternativa ii está correta.
	Respondido em 02/04/2020 19:25:35
	
Explicação: As estruturas de decisão realmente alteram o fluxo de um programa, uma estrutura composta é mais eficiente que duas simples, já que há menos testes e podemos usar operadores lógicos para combinar condições e reduzir o número de estruturas de decisão simples. Portanto todas as afirmativas estão corretas.
	
	
	 
	
	 7a Questão
	
	
	
	
	Escolha a alternativa abaixo que completa o sentido da frase:
O uso das _________________ é obrigatório quando for usada mais de uma instrução dentro da estrutura de decisão, if (o comando "se" em Portugol), logo, usar sempre não ocasionará problemas.
		
	 
	palavras reservadas
	
	strings
	 
	chaves
	
	aspas duplas
	
	aspas simples
	Respondido em 02/04/2020 19:26:11
	
Explicação:
Quando se tem duas ou mais instruções temos um bloco de comandos. O uso de chaves no bloco do if ou no bloco do else é obrigatório, assim como no caso de outros comandos.
Quando se tem apenas uma instrução, o uso de chaves é opcional.
	
	
	 
	
	 8a Questão
	
	
	
	
	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;
}
		
	
	N2 == N1 || N2 > 20
	 
	N1 < N2 && N1 > 20
	
	N2 > N1 || N1 > 50
	
	N1 < N2 && N1 < 50
	 
	N1 > N2 || N2 < 50

Continue navegando