desculpe, compliquei.
o % 3 nao, porque 6 % 3 é 0 mas 6 é par…
Este método verifica se um numero é impar ou não:
public boolean isImpar(int number) {
return(!((number % 2) == 0)));
}
poderia ser assim:
public boolean isImpar(int number) {
return((number % 2) != 0);
}
que significa % -> resto da divisao, portanto, se o resto da divisao de number por 2 for diferente de zero, é impar.
PS: voce poderia fazer direto sim…
o this significa instancia da classe, ou seja, chamar um metodo dela mesma, e poderia nao ser colocado.
Eu também usei 2 classes, uma só com o método main, que vc usa pra rodar o seu prog java, e outra com a regra do cálculo… vc poderia fazer tudo numa só…
arrumando entao, ficaria:
class SuaClasseMain {
public static void main(String []args) {
//instancia a classe que faz o calculo
SuaClasseCalculaY ccy = new SuaClasseCalculaY();
//faz o calculo e imprime na saida padrao
int x = 2;
int resultado;
resultado = ccy.calculaY(x);
System.out.println(resultado);
}
}
classe SuaClasseCalculaY {
//retorna um inteiro (sempre vai ser né? nao tinha me ligado disso)
public int calculaY(int x) {
//verifica se é impar
if (x % 2 != 0) {
return((3 * x) + 1);
} else {
return(x / 2);
}
}
}
melhorou?
qquer duvida, fique a vontade!