Würfelwurzel einer negativen Zahl

8

Ich versuche die Kubikwurzel einer negativen Zahl zu finden, aber ich bekomme eine NaN. Irgendwelche Hilfe?

%Vor%     
Chro 28.11.2011, 02:08
quelle

4 Antworten

13

Die Java-Dokumentation für Math.pow lautet:

  

Wenn das erste Argument endlich ist und kleiner als Null [...] [und] wenn das zweite Argument endlich ist und keine ganze Zahl, dann ist das Ergebnis NaN.

Sie könnten Math.cbrt verwenden, um den Kubikstamm zu erhalten:

%Vor%     
Etienne de Martel 28.11.2011, 02:13
quelle
7

Denken Sie daran, dass es mathematisch drei Würfelwurzeln gibt. Angenommen, Sie möchten die echte Wurzel haben, sollten Sie Folgendes tun:

%Vor%

BEARBEITEN: Wie die anderen Antworten erwähnen, gibt es Math.cbrt(x) . (von dem ich nicht wusste, dass es existiert)

Der Grund, warum pow NaN mit einer negativen Basis und nicht-integraler Potenz zurückgibt, ist, dass das Powering normalerweise durch die Winkel-Magnitude in der komplexen Ebene erfolgt.

  • Bei positiven reellen Zahlen ist der Winkel gleich Null, daher ist die Antwort immer noch positiv und real.
  • Bei negativen reellen Zahlen ist der Winkel 180 Grad, was (nach Multiplikation mit einer nicht ganzzahligen Potenz) immer eine komplexe Zahl ergibt - daher ein NaN .
Mysticial 28.11.2011 02:11
quelle
3

Ссылка )

%Vor%     
Jeff Lauder 28.11.2011 02:16
quelle
1

Von Ссылка :

  

Wenn das erste Argument endlich und kleiner als null ist

     
  • wenn der zweite   Argument ist eine endliche gerade Zahl, das Ergebnis ist gleich dem Ergebnis   der Erhöhung des absoluten Wertes des ersten Argumentes auf die Potenz von   das zweite Argument
  •   
  • wenn das zweite Argument eine endliche ungerade ganze Zahl ist,   Das Ergebnis ist gleich dem Negativ des Ergebnisses der Erhöhung der   absoluter Wert des ersten Arguments zur Potenz des zweiten   Argument
  •   
  • Wenn das zweite Argument endlich ist und keine Ganzzahl, dann wird das   Ergebnis ist NaN.
  •   
    
Oliver Charlesworth 28.11.2011 02:13
quelle

Tags und Links