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.