Oi gente, bom dia
Estou tentando fazer um código em que preciso realizar essa conta 2^(x/12).
2 elevado a uma fração onde o x é um número digitado pelo usuário que pode ser positivo ou negativo, tentei usar Math.pow(2, x/12) mas só retorna 1 independente do valor do x, alguém tem alguma ideia?
Se x é um int, então x/12 também será um int. Se x for menor que 12, então x/12 será sempre 0 e qualquer número elevado a 0 é 1.
Declara o x como double ou divide por 12.0 em vez de 12.
int x = 10;
double y = Math.pow(2, x/12);
System.out.println(y); // imprime 1
double x = 10;
double y = Math.pow(2, x/12);
System.out.println(y); // imprime 1.7817974362806785
int x = 10;
double y = Math.pow(2, x/12.0);
System.out.println(y); // imprime 1.7817974362806785
2 curtidas
Coloquei 12.0 e funcionou, vlwww.