Considerando o comando printf("%d",((a > b) || (b < c) && (c < b)));, é correto afirmar que:
I –O resultado será um para a = 30, b = 20, c = 10
PORQUE
II –Para a expressão lógica proposta, basta que uma das condições seja verdadeira.
Assinale a alternativa correta
a) As afirmações I e II são verdadeiras, e a segunda é uma justifica válida da primeira.
b) As afirmações I e II são verdadeiras, mas a segunda não é uma justifica válida da primeira.
c) Somente a afirmação I é verdadeira.
d) Somente a afirmação II é verdadeira.
e) As afirmações I e II não são verdadeiras.
Soluções para a tarefa
Resposta: a)
Explicação:
todas estão erradas, exceto a).
Para I - sabemos que é verdadeiro a = 30, b = 20 e c = 10.
O resultado será um da primeira, pois a primeira condição é verdadeira (30 > 20 ) ? Sim, então é verdade.
20 < 10 ? Não.
10 < 20 ? Sim, mas como o operador && tá sendo usando então sabemos que para isso ser verdade tem que o (b < c) e (c < b) se os dois são verdade, então é verdade, caso um seja verdade e outro falso, ambos são falsos.
II - "Para a expressão lógica proposta, basta que uma das condições seja verdadeira" a segunda opção o código está incorretamente, mas a primeira tá correto, então sabemos que a resposta não é a b) e sim a).
A lógica de programação é muito importante de ser estudada de modo que através desse tipo de estudo conseguimos aprender mais sobre os diferentes tipos de recursos lógicos utilizados na linguagem C. Sobre esse contexto a alternativa correta é a letra A).
No trecho de código acima foi utilizado o "maior que" , "Menor que" , "lógica ou" e "lógica e". Na elaboração de trechos de código como esses é preciso conhecer a linguagem para saber a ordem de prioridade que a linguagem da a diferentes recursos lógicos pois há uma hierarquia respeitada pela linguagem.
Saiba mais: https://brainly.com.br/tarefa/24112749