![]() |
Mit "Power" eine beliebige Wurzel ziehen
Hey Leute,
ich finde in der SuFu irgendwie nichts... Ich bin dabei einen Taschenrechner zu "basteln" und will nun eine eine beliebige Wurzel ziehen... Bei beliebigen Exponenten habe ich das folgendermaßen:
Delphi-Quellcode:
Kann man denn mit der "Power" Funktion auch beliebige Wurzeln ziehen?
procedure TForm1.Button4Click(Sender: TObject);
var zahl1, zahl2, ergebnis: real; begin zahl1 := StrToFloat(Edit1.Text); zahl2 := StrToFloat(Edit2.Text); ergebnis := power(zahl1, zahl2); edit3.text := FloatToStr(ergebnis); end; Wenn ja, wie? MfG 0nk3lz |
Re: Mit "Power" eine beliebige Wurzel ziehen
Die Funktion Power errechnet aus der Basis Base und dem beliebigen Wert Exponent die Potenz. Wurzel? :gruebel:
schau dir mal sqrt an. |
Re: Mit "Power" eine beliebige Wurzel ziehen
Andererseits ist die Quadratwurzel von x = x^(1/2)
|
Re: Mit "Power" eine beliebige Wurzel ziehen
Ja ich dachte, dass es mit Power geht, weil man mit Power auch die 3. Wurzel ziehen kann:
Delphi-Quellcode:
procedure TForm1.BitBtn7Click(Sender: TObject);
var zahl1, ergebnis: real; begin zahl1 := StrToFloat(Edit1.Text); ergebnis := power(zahl1,1/3); edit3.text := FloatToStr(ergebnis); end; |
Re: Mit "Power" eine beliebige Wurzel ziehen
Dann hast du doch deine Frage schon fast selber beantwortet
|
Re: Mit "Power" eine beliebige Wurzel ziehen
Fast, aber leider nicht ganz. Und auf den Rest komm ich leider nicht... :(
|
Re: Mit "Power" eine beliebige Wurzel ziehen
Welchen Rest? Hast du mal die Delphi-Hilfe konsultiert?
|
Re: Mit "Power" eine beliebige Wurzel ziehen
Zweite Wurzel von x: x^(1/2) nach mkinzler.
Dritte Wurzel von x: x^(1/3) nach 0nk3lz. Da ist doch ein Muster drin? |
Re: Mit "Power" eine beliebige Wurzel ziehen
Vielleicht hilft das
![]() |
Re: Mit "Power" eine beliebige Wurzel ziehen
Zitat:
2 und 3 ... ergibt 23 !!! Und 2*2 + 3*3 ergibt 13 :shock: |
Re: Mit "Power" eine beliebige Wurzel ziehen
Ja da ist ein Muster, aber es soll ja nicht die Zweite oder Dritte sein, sondern eine beliebige Wurzel aus einer beliebigen Zahl...?!
|
Re: Mit "Power" eine beliebige Wurzel ziehen
Zitat:
So, genug OT ;) |
Re: Mit "Power" eine beliebige Wurzel ziehen
Zitat:
die x.Wurzel ist dann Zahl1^(1/x) |
Re: Mit "Power" eine beliebige Wurzel ziehen
Sowas in etwa:
Delphi-Quellcode:
:?:
// Zihet die n-te Wurzel der Zahl
// 1. Parameter x: Die Zahl // 2. Parameter n: Die wievielte Wurzel berechnet werden soll // Rückgabe: Die n-te Wurzel der Zahl x function n_te_Wurzel(x, n:real):real; begin Result := power(x, 1/n); end; Ich glaub ich geh' jetzt mal ins Bett ... |
Re: Mit "Power" eine beliebige Wurzel ziehen
Habs jetzt auch gerallt...
Sieht bei mir nun so aus...:
Delphi-Quellcode:
...und funktioniert auch prima.
power(zahl1,1/zahl2)
Danke Leute, bevor ich mehr blöde Fragen stelle, gehe ich jetzt pennen :) |
Re: Mit "Power" eine beliebige Wurzel ziehen
Schön, das der Groschen noch gefallen ist. Na schieben wir es mal auf die vorgerückte Stunde :zwinker:
|
Re: Mit "Power" eine beliebige Wurzel ziehen
Und noch ein paar Gedanken...
Ohne Math-Unit:
Delphi-Quellcode:
Ohne Math-Unit und mit der Möglichkeit die Genaugkeit der richtigen Stellen vorzugeben:
function nsqrt(x, n:real):real;
begin Result := exp(1 / n * ln(x)); end;
Delphi-Quellcode:
function nsqrt(x, n:real; g:real = 0.00000000000000001):real;
var s, o:real; begin s:=x; repeat o:=x; x:=(((n-1) * x) + (s / exp((n-1) * ln(x)))) / n; until abs(o - x) <= g; Result:=x; end; |
Re: Mit "Power" eine beliebige Wurzel ziehen
Zitat:
Edit: ![]() ... |
Re: Mit "Power" eine beliebige Wurzel ziehen
Zitat:
Zitat:
|
Re: Mit "Power" eine beliebige Wurzel ziehen
Zitat:
|
Re: Mit "Power" eine beliebige Wurzel ziehen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz