mathematische befehle in c++
-
T_Stach schrieb:
sry, hab bei mir vergessen <math.h> einzubinden
noch besser wäre
#include <cmath>
noch ne lösung für 3. wurzel aus 8 wäre
pow(10.0,log10(8.0)/3.0);
K.
-
ähm....also wenn ich die aufgabe
q = pow ((0.125 / -1 ), 1.0/(4-1));
rechne, dann kommt als Ergebnis
-NaN
anstatt
-0.5
raus
-
Dann berechne halt
-pow(0.125, 1/3.0);
MfG Jester
-
da wird das vorzeichen nur verkehrt
es kommt trotzdem NaN raus....was heißt das überhaupt ?
-
T_Stach schrieb:
es kommt trotzdem NaN raus....was heißt das überhaupt ?
NaN == "Not a Number"
irgendwas jenseits von unendlich
-
ui, na sag ich mal danke
-
net schrieb:
T_Stach schrieb:
es kommt trotzdem NaN raus....was heißt das überhaupt ?
NaN == "Not a Number"
irgendwas jenseits von unendlicheher jenseits von gut und böse
es kommt prinzipiell heraus, wenn eine operation an sich undefiniert ist.1/0 ist ja zum beispiel noch ganz einfach -> unendlich
analog 1/-0 -> -unendlich (ja es gibt nullen mit vorzeichen, die sind aber gar nicht so einfach auseinanderzuhalten, das hier ist eine möglichkeit)undefiniert und daher NaN ist dagegen:
0/0
unendlich/unendlich
unendlich-unendlichusw.
-
camper schrieb:
undefiniert und daher NaN ist dagegen:
0/0
unendlich/unendlich
unendlich-unendlich∞/∞ könnte 0 sein, wenn beide ∞ gleich gross sind
∞-∞ ist auch nicht viel. jedenfalls weniger als ∞
-
camper schrieb:
1/0 ist ja zum beispiel noch ganz einfach -> unendlich
Da kommen für mich unendlich viele Lösungen raus, was dem Not a Number widerspricht.
-
net schrieb:
camper schrieb:
undefiniert und daher NaN ist dagegen:
0/0
unendlich/unendlich
unendlich-unendlich∞/∞ könnte 0 sein, wenn beide ∞ gleich gross sind
∞-∞ ist auch nicht viel. jedenfalls weniger als ∞
Las das bloß nicht meinen Mathe-Prof hören. Unendlich ist ein Symbol, damit rechnet man nicht. Eben weil es undefiniert ist.
bis bald
akari
-
Michael E. schrieb:
camper schrieb:
1/0 ist ja zum beispiel noch ganz einfach -> unendlich
Da kommen für mich unendlich viele Lösungen raus, was dem Not a Number widerspricht.
-
akari schrieb:
net schrieb:
camper schrieb:
undefiniert und daher NaN ist dagegen:
0/0
unendlich/unendlich
unendlich-unendlich∞/∞ könnte 0 sein, wenn beide ∞ gleich gross sind
∞-∞ ist auch nicht viel. jedenfalls weniger als ∞
Las das bloß nicht meinen Mathe-Prof hören. Unendlich ist ein Symbol, damit rechnet man nicht. Eben weil es undefiniert ist.
bis bald
akariunendlich ist alles andere als undefiniert und rechnen kann man damit ganz gut. im übrigen sind wir hier bei c++ und dem rechnen mit pseudo-reellen zahlen.
Michael E. schrieb:
camper schrieb:
1/0 ist ja zum beispiel noch ganz einfach -> unendlichDa kommen für mich unendlich viele Lösungen raus, was dem Not a Number widerspricht.
das ist schon richtig. aber betrachte das mal als 'grenzwert':
;
in diesem sinne ist auch die negative null zu verstehen, nähmlich als grenzwert einer folge negativer glieder.
-
Walli: http://www.c-plusplus.net/forum/viewtopic.php?t=77147
camper: Ich hab unendlich ja auch nicht ausgeschlossen.
-
Michael E. schrieb:
Walli: http://www.c-plusplus.net/forum/viewtopic.php?t=77147
camper: Ich hab unendlich ja auch nicht ausgeschlossen.
naja, du hast von unendlich vielen lösungen geredet. das stimmt so ja nicht. der gleichung x = 1 / 0 bzw. 0 * x = 1 genügt keine einzige (endliche) reelle zahl x.
-
Michael E. schrieb:
Walli: http://www.c-plusplus.net/forum/viewtopic.php?t=77147
Es ist keine Zahl, somit also kein Widerspruch
.
Wenn es vielmehr alle Zahlen sein können die "1/0 = x" lösen, dann reden wir von einer leeren Menge, was aber definitiv keine Zahl ist. Wenn wir den Fall "0 * x = 0" betrachten, dann erhalten wir eine Menge mit unendlich vielen Elementen, also keine Zahl.
EDIT1-3: OMG, soviele Verdreher in den paar Sätzen...
EDIT4: Das Ganze nochmal in einfach
-
Jo, ihr habt recht. Danke für die Aufklärung
-
und wie kann ich jetzt das problem mit dem NaN lösen ? also das er mir eine zahl rauswirft
-
Hat Jester weiter oben im Thread erklärt.
\sqrt[3]{-x}=-\sqrt[3]{x}