Archiv verlassen und diese Seite im Standarddesign anzeigen : 3. oder 4. Wurzel errechnen
Lord_Schubach
03.08.2002, 15:31
Hi Leute !
Ich schreibe gerade einen Wissenschaftsrechner, der natürlich auch die 3., 4., usw. Wurzel berechnen kann.
Ich kenne zwar die Funktion sqrt, aber mit der kann man nur die Quadratwurzel errechen.
Kennt jemand eine Formel oder Funktion, mit der man diese Wurzeln berechnen kann ?
Lord_Otter
03.08.2002, 15:39
Eine Funktion kenne ich nicht, aber eine Formel.
Benutze folgende Funktion, um dieses Problem zu lösen:
FUNCTION Wurzel(zahl:Extended;wurzel_grad:Byte):Extended;
BEGIN
Result :=Exp((1/wurzel_grad) * Ln(zahl));
END;
Alles klar ?
Lord_Schubach
03.08.2002, 15:47
Danke für die Blitzschnelle Antwort.
Ich schrieb die Frage, las noch ein bisschen im Forum,
und entdeckte schon wieder deine Antwort.
Die Funktion gefällt mir, ich werde sie gleich ausprobieren.
Außerdem klingt sie logisch.
Also noch mal danke für die schnelle Antwort.:D
Diogenes
03.08.2002, 16:02
An sich geht das etwa so (BP7):
type
Float=Real;
(* Oder sonst ein Real-Format*)
function Root( Radikand, Exponent: Real): Float
begin
Root := Exp( Ln( Radikand) / Exponent)
end;
Zu beobachten ist:
Radikanden, die nicht Positiv sind (Radikand <= 0) bewirken einen Fehler, weil der Ln nur positive Argumente verträgt. Das ist für gerade Exponenten OK, für ungerade nicht: Die Wurzel aus negativer Zahl bei ungeradem Wurzelexponenten ist reell und negativ.
Für nicht-ganze Exponenten ist zu beachten, daß der Exponent in Zähler und Nenner gespalten gehört. Bei geradem Zähler ist alles OK, bei ungeradem Probleme wie oben.
Wenn eine solche Aufspaltung nicht gelingt, ist der Exponent nicht rational, sondern irrational. Negative Radikanden ergeben komplexe Wurzeln und daher einen Fehler.
Das alles war für positive Exponenten.
Exponent 0 ergibt 1, wenn Radikand ungleich 0 ist. Bei Radikand gleich 0 ergibt das unendlich viele Lösungen im Komplexen und keine relle, also Fehler.
Negative Exponenten werden wie positive behandelt. Die Wurzel ist dann allerdings der Kehrwert: exp (-2 * ln (4)) = 1 / 2.
Lord_Schubach
04.08.2002, 19:07
Hi!
Diese ganzen Sachen funktionieren.
Nochmal Vielen Dank!
Lord_Schubach
13.08.2002, 11:39
Wenn ich einen Beitrag schreibe geht meine Beitragszahl nicht hoch!!
Lord_Otter
13.08.2002, 11:40
Jetzt geht sie aber wieder.
Lord_Schubach
13.08.2002, 14:49
Geht sie schon wieder nicht!!!!!!!
Lord_Schubach
13.08.2002, 14:50
Manchmal geht sie und manchmal nicht
Lord_Schubach
13.08.2002, 14:50
Irgendwie geht das nicht!!! Kannst du auch mal antworten?
Lord_Schubach
13.08.2002, 14:51
Lord_Otter du hast die AG verpennt!!!!!!!
Lord_Otter
13.08.2002, 20:47
Du hattest gesagt, dass die Diesntags AG doch nicht gibt.
Ich hab' dir geglaubt...
Aber das ist egal, und ich finde, dass ist ein Fall für die Privaten Nachrichten, ok ?
Lord_Schubach
21.08.2002, 19:44
Schon gut!!
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.