Pessoal, por que esse código funciona
class BalancoTrimestral{
public static void main(String[] args) {
int numero = 13;
while(numero != 1){
if((numero % 2) == 0){
numero /= 2;
}else{
numero = ((3 * numero) + 1);
}
System.out.println(numero + " ");
}
}
}
E esse não?
class BalancoTrimestral{
public static void main(String[] args) {
int numero = 13;
boolean eh_Par = ((numero % 2) == 0);
while(numero != 1){
if(eh_Par){
numero /= 2;
}else{
numero = ((3 * numero) + 1);
}
System.out.println(numero + " ");
}
}
}
Essa variável eh_Par retorna um valor false ou true. Os códigos não fazem exatamente a mesma coisa?
O segundo código entra em um loop infinito. O primeiro não.