![]() |
Re: Taschenrechner bauen, Problem mit Addition
Danke Fabian, das war sehr hilfreich :thumb: :thumb:
EDIT: Hab jetzt bei private "d" deklariert, mit dem Datentyp "real". Wenn ich jetzt "d" aufrufe und "d" den Wert von "a" zuweise (a ist der Inhalt der Textbox zugewiesen) und dann einer weiteren Variablen "b" den neuen Inhalt der Textbox zuweise (So ists zumindest gedacht), dann addiert er zu dem Wert "a" nochmal "a" hinzu, also nimmt ax2. Ich weiß, es ist sehr verwirrend, daher der Programmcode:
Delphi-Quellcode:
Alle Variablen sind global deklariert
procedure TForm1.BitBtn3Click(Sender: TObject);
begin a:=StrToFloat (Edit1.Text); //a ist der Inhalt der Textbox d:=a; //d soll den Wert von "a" zwischenspeichern b:=StrToFloat (Edit1.Text); //b soll den Wert, der zu d hinzuaddiert werden soll aus der Textbox auslesen end; procedure TForm1.BitBtn4Click(Sender: TObject); begin c:=d+b; //d soll mit b addiert werden Edit1.Text:= FloatToStr (c); //c soll das Ergebnis in der Textbox ausgeben end; |
Re: Taschenrechner bauen, Problem mit Addition
In dem Fall ist d eigentlich überflüssig:
Delphi-Quellcode:
procedure TForm1.BitBtn3Click(Sender: TObject);
begin a:=StrToFloat (Edit1.Text); //a ist der Inhalt der Textbox und ist das Zwischenergebnis b:=StrToFloat (Edit1.Text); //b soll den Wert, der zu a hinzuaddiert werden soll aus der Textbox auslesen end; procedure TForm1.BitBtn4Click(Sender: TObject); begin c:=a+b; //a soll mit b addiert werden Edit1.Text:= FloatToStr (c); //c soll das Ergebnis in der Textbox ausgeben end; Wenn du das jetzt so machen würdest, brauchst du d nicht, du nimmst aber trotzdem a*2: In einer Prozedur setzt du a und b auf den Inhalt des Edits, ohne das der Wert zwischendrin geändert werden kann... Versuch mal das hier:
Delphi-Quellcode:
procedure TForm1.BitBtn3Click(Sender: TObject);
begin a:=StrToFloat (Edit1.Text); //a ist der Inhalt der Textbox und ist das Zwischenergebnis end; procedure TForm1.BitBtn4Click(Sender: TObject); begin b:=StrToFloat (Edit1.Text); //b soll den Wert, der zu a hinzuaddiert werden soll aus der Textbox auslesen c:=a+b; //a soll mit b addiert werden Edit1.Text:= FloatToStr (c); //c soll das Ergebnis in der Textbox ausgeben end; Liebe Grüße! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:25 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