Questão FC373320
Considere o fragmento de código abaixo retirado de uma classe criada em C#, em condições ideais. int m = 8; int n = 7; int p = 3; if (m >= n && m >= p) { //statement 1 } if (m >= n
Linguagens de Programação
FCC · 2018
Considere o fragmento de código abaixo retirado de uma classe criada em C#, em condições ideais.
int m = 8;
int n = 7;
int p = 3;
if (m >= n && m >= p)
{
//statement 1
}
if (m >= n && !(p > m))
{
//statement 2
}
if (m > n || m > p)
{
//statement 3
}
if (m % 2 == 0)
{
//statement 4
}
A partir da observação do código, considere as afirmações abaixo:
I. if (m >= n && m >= p) verifica se m é maior que n ou maior que p.
II. if (m >= n && !(p > m)) verifica se m é maior que n e também maior que p.
III. Se if (m > n || m > p) resultar em true indica que m não é o menor dos 3 números.
IV. if (m % 2 == 0) verifica se o valor m contém um número inteiro.
Está correto o que consta APENAS de
- I e III.
- I e IV.
- II e III.
- III e IV.
- II e IV.
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
II. A expressão \(if\ (m >= n\ \&\&\ !(p > m))\) avalia duas condições em conjunção: \(m >= n\) e a negação de \(p > m\). A negação transforma \(p > m\) em \(p <= m\), ou seja, \(!(p > m)\) é equivalente a \(m >= p\). Portanto a condição só é verdadeira quando \(m\) é maior ou igual a ambos \(n\) e \(p\).
III. A expressão \(if\ (m > n\ ||\ m > p)\) usa disjunção, ou seja, verifica se \(m\) é maior que pelo menos um dos outros valores. Se essa condição for verdadeira, existe ao menos um número entre \(n\) e \(p\) menor que \(m\), logo \(m\) não é o menor dos três.
Conteúdo do catálogo FC Concursos · Atualizado em