![]() |
Wurzel ziehen
Hi,
ich habe angefangen mir Delphi beizubringen, bin also ein totaler Noob :oops: Also ich habe mir vorgenommen einen Taschenrechner zu programmieren, und dann immer schwerere Funktionen hinzuzufügen =) Addieren, Subtrahieren, Multiplizieren, Dividieren und Quadrieren kann er schon *stolz sei obwohl das jeder in 2 Mins programmieren kann* :mrgreen: Naja nun bin ich beim Wurzel Ziehen..ich habe schon in der Delphi-Suche geforscht und bin irgendwie über qw:=Power(Zahl1, 0.5); (qw = QuadratWurzel) gestolpert, aber da bekomme ich immer die Fehlermeldung [Fehler] Unit1.pas(84): Undefinierter Bezeichner: 'Power' Was mache ich falsch? Oder muss ich da sowieso ganz anders herangehen? In der Schule haben wir mal das Heron-Verfahren durchgenommen, also eine Wurzel nur mit den Grundrechenarten zu bestimmen - aber dass umzusetzen ist sicherlich viel zu umständlich!? Naja, schon mal DANKE für eure Antworten! Greetz DJA PS: Ich habe Delphi 7 |
Re: Wurzel ziehen
Delphi-Quellcode:
Uses ...,Math;
|
Re: Wurzel ziehen
Zitat:
Delphi-Quellcode:
Edit:
Caption := FloatToStr(sqrt(25)); // Ergebnis natürlich 5
Alles richtig so? |
Re: Wurzel ziehen
Hi,
thx für die schnellen und ausführlichen :freak: Antworten :-D ich habe nun Zitat:
|
Re: Wurzel ziehen
Welchen Wert hat Zahl1?
|
Re: Wurzel ziehen
[weist du was FloatToStr bedeutet?
IntToStr => IntegerWert in einen String umwandeln FloatToStr => DezimalWert (Real, Extended ..) in einen String umwandeln. Als was ist Zahl1 deklariert? |
Re: Wurzel ziehen
Jap das wusste ich,
Zahl1 ist bei mir die Variable, aus der die WUrzel gezogen werden soll. Mein Quellcode wie ich ihn bisher habe: Zitat:
![]() |
Re: Wurzel ziehen
Delphi-Quellcode:
Da muss Real, nicht integer hin.
Zahl1, Zahl2, Ergebnis: integer;
Un überall wo StrToInt steht, machst du dann StrToFloat draus. |
Re: Wurzel ziehen
dann gibts bei
Label4.Caption:=IntToStr(Ergebnis); den Fehler [Fehler] Unit1.pas(47): Es gibt keine überladene Version von 'IntToStr', die man mit diesen Argumenten aufrufen kann Zitat:
Ergebnis:=Zahl1 div Zahl2; // die Division den Fehler [Fehler] Unit1.pas(70): Operator ist auf diesen Operandentyp nicht anwendbar aber um den Fehler einfach zu umgehen und mal auszutesten habe ich "div" durch "+" ersetzt, dann kann ich den Code zwar compilieren, aber das Ergebnis ist immer noch Null!? |
Re: Wurzel ziehen
Delphi-Quellcode:
zahl1 / zahl2
Delphi-Quellcode:
Label4.Caption:=IntToStr(Ergebnis); // Falsch, nicht Int
Delphi-Quellcode:
FloatToStr(Ergebnis); // Richtig, ist doch Real, nicht Integer
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:52 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 by Thomas Breitkreuz