Sou aluno iniciante em Java e preciso de um apoio num trabalho.
Exemplo:
if (altura>180 && idade<=25 && sexo == 'M')
System.out.println("Atleta apto")
Preciso reescrever sem operadores lógicos, apenas com IF's encadeados. Ficou assim:
if (altura>180)
if (idade<=25)
if (sexo == 'M')
System.out.println("Atleta apto")
Exemplo 2:
resultado = b;
if (a<=b && a<=C || x!=1)
resultado = a;
Esse caso acima, já tentei escrever 1000x com if e else, if, else… mas sempre sai algo errado.
Conseguem me dar um apoio?
if (x!=1) {
resultado = a;
} else if (a<=b) {
if (a<=C) {
resultado = a;
}
}
Veja se isto resolve.
Douglas, valeu pela retorno rápido.
Pelo que entendi:
a<=b --> é um requisito, se este for falso, o retorno será “B”.
a<=c --> pode ser negativo, mas daí terá que testar ainda se o “x!=1”.
Para o resultado ser “A” é preciso que o “a<=B” e uma das outras duas situações também seja verdadeira.
Entendeu meu raciocínio? Por isso acho que o primeiro if seria no (a<=b).
resultado = b;
if (a>b) { //É o inverso de "a<=b", Se "a<=b" então o retorno será "B"
if (a<=C) {
resultado = a;
} else if (x!=1) {
resultado = a;
}
}
Isso é equivalente a:
resultado = b;
if (a<=b && (a<=C || x!=1)) {
resultado = a;
}
É isso que você precisava?
Cheguei agora aqui, vou testar e te retorno. Obrigado desde já!!
Não esqueçam que && precede ||, logo isso
if (a<=b && a<=C || x!=1)
É o mesmo que isso
if ((a<=b && a<=C) || x!=1)
Seria isso?
if (a <= b) {
if (a <= C) {
resultado = a;
}
} else if (x != 1) {
resultado = a;
}
1 curtida
Lost, obrigado!
(Douglas Silva também).
eu já tinha testado aqui a resposta do Douglas Silva, porém invertendo o sinal do primeiro if.
Valeu galera!!
1 curtida