Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Rechenprogramm (https://www.delphipraxis.net/107482-rechenprogramm.html)

dtos 28. Jan 2008 15:47


Rechenprogramm
 
Da ich noch ein absoluter anfänger in Delphi bin habe ich auch so eine Frage:

Ich will halt ein Rechenprogramm erstellen halt so was wie es den unter Windows schon installiert ist.

Ich wollte erstmal mit etwas einfachen anfangen also wollt ich erstmal zwei eingabefelder erstellen und einen Label wo das Ergebnis zu sehen ist. Achja und einen Button halt der das ergebnis anzeigt auf dem Label.
So alles wunderbar hab es gemacht so wie es in einen Turorial stand mit dem Code damit das Programm auch die beiden Eingaben Addiert.

Sieht bei mir so aus:

Delphi-Quellcode:
 Label3.Caption := Edit1.Text + Edit2.Text;
ich habe es auch mit Variabel versucht aber das Programm rechnet das nicht aus sonder gibt mir auf dem Label die beiden Zahlen hintereinanderweg geschrieben.

Also wenn ich in Feld 1 eingebe: 10
Und in Feld 2 eingebe: 10

Dann rechnet er nicht 10 + 10 und zeigt 20 an sonder er zeigt 1010 an.

Achja ich benutze Delphi 2007.

Ich hoffe jemand kennt die Antwort.

Klaus01 28. Jan 2008 15:57

Re: Rechenprogramm
 
Hallo,

zum Rechnen solltest Du die Strings in Edit1.Text und Edit2.Text erst einmal
in Zahlen umwandeln. Das kannst Du mit StrToInt machen.
Das Ergebnis solltest Du dann wieder in einen String wandeln z.B. mit IntToStr.

Grüße
Klaus

Aurelius 28. Jan 2008 15:58

Re: Rechenprogramm
 
Das ist ganz einfach:

Edit1.Text ist ein String, also eine Zeichenkette. Das heißt dass Delphi das Geschriebene nichta ls "echte" Zahlen, sondern nur als Zeichen behandelt und somit die beiden Strings der Edit-Felder aneinander packt.

Um zu rechnen musst du den text in einen Zahlenwert umwandeln, z.b. in eine Ganzzahl (integer)
Delphi-Quellcode:
Zahl1 := StrToInt(Edit1.Text);
Wenn du es ausgeben möchtest musst du es genau umgekehrt machen, z.b.
Delphi-Quellcode:
Edit3.Text := InttoStr(Ergebnis);

dtos 28. Jan 2008 16:07

Re: Rechenprogramm
 
Sieht bei mir jetzt so aus funktioniert aber trotzdem nicht:

Delphi-Quellcode:
 procedure TForm1.Button1Click(Sender: TObject);

var zahl1, zahl2, ergebnis : integer;

begin

Zahl1 := StrToInt(Edit1.Text);
Zahl2 := StrToInt(Edit2.Text);

ergebnis := Zahl1+Zahl2;

Label3.Caption := Inttostr(ergebnis);


end;

DeddyH 28. Jan 2008 16:08

Re: Rechenprogramm
 
Was heißt "funktioniert nicht"? Der Code ist schonmal OK (von fehlenden Fehlerprüfungen abgesehen).

lbccaleb 28. Jan 2008 16:09

Re: Rechenprogramm
 
gibt er dir ne fehlermeldung oder was genau funktioniert nicht sollte nämlich eigentlich so laufen..

dtos 28. Jan 2008 16:10

Re: Rechenprogramm
 
Ja der gibt trotzdem noch z.B. (10+10) = 1010 aus anstatt 20.

DeddyH 28. Jan 2008 16:10

Re: Rechenprogramm
 
Hast Du auch neu kompiliert?

dtos 28. Jan 2008 16:12

Re: Rechenprogramm
 
Ja kompilieren ist ja Programm Starten oder nicht. Also F9 bei delphi 2007

Aurelius 28. Jan 2008 16:14

Re: Rechenprogramm
 
Lösch einfach mal die ".dcu"-Dateien aus dem ProjektOrdner.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:59 Uhr.
Seite 1 von 2  1 2      

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