Fórmula de distância em java impressão nan - Como faço para consertar isso?

StackOverflow https://stackoverflow.com/questions/1950950

  •  21-09-2019
  •  | 
  •  

Pergunta

Ok, então estou usando a fórmula de distância para imprimir a distância entre dois objetos de jogador de dentro de um dos objetos do jogador (com "outros" sendo outro objeto de jogador). Como posso imprimir o número sem obter uma "nan"?

System.out.println("D = " + Math.sqrt(Math.pow(x - other.x, 2) - Math.pow(-(y - other.y), 2)));
Foi útil?

Solução

Você está tentando pegar a raiz quadrada de um número negativo. Adicione os quadrados, não os subtrai.

Além disso, negando y - other.y é desnecessário, embora inofensivo. valor2 é o mesmo que (-valor)2 Para todos os números.

System.out.println("D = " + Math.sqrt(Math.pow(x - other.x, 2) + Math.pow(y - other.y, 2)));
//                                                            ^^^
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top