Considere o pseudocódigo abaixo.Algoritmo Lógica var a, b, ...

Próximas questões
Com base no mesmo assunto
Q515531 Algoritmos e Estrutura de Dados
Considere o pseudocódigo abaixo.

Algoritmo Lógica
var a, b, c, d: inteiro
Início
  a ← 2
  b ← 5
  c ← 10
  d ← 3
  Se (NÃO((a+c*b) < = (d*b/a)) E ((b+c/d) < (c/a*d-b*a))) então
     imprima ("A")
  Fim_se
  Se (((a+c*b) < = (d*b/a)) OU ((b+c/d) < > (c/a*d-b*a)) E NÃO((c-d)=(d+a))) então
     imprima ("B")
  Fim_se
  Se ((((a+c)*b) < = (d*b/a)) E ((b-c*d) < > (c/a*(d-b)*a))) então
     imprima ("C")
  Fim_se
Fim

Neste algoritmo será impresso
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: C

Vamos analisar o pseudocódigo e entender os detalhes importantes que nos levam à resposta correta. Este tipo de questão testa o conhecimento do candidato sobre operações aritméticas, lógicas e de precedência de operadores.

1. Inicialização das variáveis:

O algoritmo começa inicializando as variáveis:
a ← 2
b ← 5
c ← 10
d ← 3

2. Primeira condição:

Se (NÃO((a+c*b) ≤ (d*b/a)) E ((b+c/d) < (c/a*d-b*a))) então

Vamos calcular as expressões dentro da condição:
(a + c * b) = 2 + 10 * 5 = 2 + 50 = 52
(d * b / a) = 3 * 5 / 2 = 15 / 2 = 7.5 (considerando divisão real)
52 ≤ 7.5 é falso

Como a negação de falso é verdadeiro, precisamos continuar avaliando a condição:
(b + c / d) = 5 + 10 / 3 = 5 + 3.333 = 8.333 (considerando divisão real)
(c / a * d - b * a) = 10 / 2 * 3 - 5 * 2 = 5 * 3 - 10 = 15 - 10 = 5
8.333 < 5 é falso

O 'E' lógico entre verdadeiro e falso resulta em falso. Portanto, a primeira condição não é satisfeita e "A" não será impresso.

3. Segunda condição:

Se (((a+c*b) ≤ (d*b/a)) OU ((b+c/d) <> (c/a*d-b*a)) E NÃO((c-d) = (d+a))) então

Já sabemos que:
(a+c*b) ≤ (d*b/a) é falso
(b + c / d) <> (c / a * d - b * a) 8.333 <> 5 é verdadeiro

Agora, vamos verificar a terceira expressão:
NÃO((c-d) = (d+a))
(c - d) = 10 - 3 = 7
(d + a) = 3 + 2 = 5
7 = 5 é falso,
Logo, NÃO(falso) é verdadeiro

Combinação de expressões:
falso OU (verdadeiro E verdadeiro):
falso OU verdadeiro = verdadeiro

Portanto, a segunda condição é satisfeita e a impressão "B" será realizada.

4. Terceira condição:

Se ((((a+c)*b) ≤ (d*b/a)) E ((b-c*d) <> (c/a*(d-b)*a))) então

Vamos calcular as expressões:
(a+c) * b = (2 + 10) * 5 = 12 * 5 = 60
(d * b / a) = 3 * 5 / 2 = 15 / 2 = 7.5
60 ≤ 7.5 é falso

Como a condição do E lógico já é falso, não é necessário avaliar o restante. A terceira condição não é satisfeita e "C" não será impresso.

Portanto, a única impressão realizada é "B", tornando a alternativa correta C.

Alternativas incorretas:

  • A: Apenas "A" não é impresso.
  • B: "A" e "B" não são impressos.
  • D: "B" e "C" não são impressos.
  • E: Apenas "C" não é impresso.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Resolvendo os cálculos e lembrando que as operações de multiplicação e divisão tem prioridade sobre as de subtração e adição quando não estiverem delimitadas por parenteses, deve ficar assim:


Se (NÃO((52) < = (7.5)) E ((5.33) < (5))) então 

     imprima ("A") 

  Fim_se 

  Se (((52) < = (7.5)) OU ((5.33) < > (5)) E NÃO((7)=(1))) então 

     imprima ("B") 

  Fim_se 

  Se (((75) < = (7.5)) E ((25) < > (-1,25)) então 

     imprima ("C") 

  Fim_se 


logo, a unica condição que passa é a segunda imprimindo a letra B

Legal Mayara San. Embora não impacte no resultado final, o valor apresentado como 5.33 deve ser 8.33, ou seja, 5 + 10/3.

Força Guerreiro!!!!!!

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo