Kennt von Euch jemand ein nicht-iteratives, einfaches Verfahren um die 'nte Wurzel' korrekt zu berechnen (ohne Vorzeichen-Trickserei ).
Für jedes ungerade 'n' sind ja negative Radikanden möglich, die in vielen Programmiersprachen und allen Tabellenkalkulationen durch =POTENZ( Radikand;1/n) funktionieren.
PureBasic macht es sich einfach und erlaubt negative 'numbers' nur bei ganzzahligen Exponenten.
Auch die Exp - Ln - Kombi funktioniert, hier verständlicherweise, nicht.
Beispiel:
Code: Alles auswählen
n.i= 3
x.i= 8
;ergibt korrekt 2 ...
Debug Pow( x, 1 / n )
Debug Exp( Log(x) / n )
x= -8
;sollte -2 ergeben, liefert NaN...
Debug Pow( x, 1 / n )
Debug Exp( Log(x) / n )