FC ConcursosFC Concursos

Questão FC331208

Considere o seguinte comando condicional escrito em Java e também em Python: if (p == false.) { return false; }elseif (q == false.) { return false; }else { returntrue; } if p == Fa

Linguagens de Programação

FGV · 2013

Considere o seguinte comando condicional escrito em Java e também em Python:

 

if (p == false.) {
return false;
}elseif (q == false.) {
return false;
}else {
returntrue;
}
if p == False:
return False
elif q == False:
return False
else:
return True

 

Este comando pode ser escrito de forma mais simples como (as opções são apresentadas em Java e Python):

  1. return p && !q;/ return p and (not q)
  2. return !(p || q); / returnnot(p or q)
  3. return p || q; / return p or q
  4. return q && p; / return q and p
  5. return !q || !p;/ return (not q) or (not p)
Mostrar resposta e comentário

Gabarito

D

Comentário do professor

A estrutura condicional retorna False sempre que p ou q forem falsos, e só retorna True quando ambos são verdadeiros. Esse comportamento é exatamente o do AND lógico.

Na linguagem de lógica proposicional essa relação é escrita como \(p \land q\). A operação é comutativa, portanto \(p \land q\) equivale a \(q \land p\).

Traduzindo para código, a forma simplificada é simplesmente a avaliação direta do AND:

Java: return q && p;
Python: return q and p

Assim, a expressão reduzida preserva a mesma tabela-verdade da sequência condicional original, retornando True somente quando ambos os operandos são True.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo