Ola a todos, gostaria de uma ajudinha aqui. Me digam o que está dando errado nesse loop infinito.
O exercicio é esse:
Escreva um programa que, dada uma variável x (com valor 180, por
exemplo), temos y de acordo com a seguinte regra:
se x é par, y = x / 2
se x é impar, y = 3 * x + 1
imprime y
O programa deve então jogar o valor de y em x e continuar até que y tenha o valor final
de 1. Por exemplo, para x = 13, a saída será:40 >20 >10 >5 >16 >8 >4 >2 >1
Meu codigo :
class exemplo{
public static void main(String args[]){
int x=13,y;
while(x>=1){
if(x%2==0){
y=x/2;
x=y;
System.out.println(x);
}
else if(x%2==1) {
y=3*x+1;
x=y;
System.out.println(x);
}
}
}
}
}
Abraço a todos !!