Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Problem bei kleinem Prog mit Schleife
sPeeD2k5 - Mi 25.01.06 23:20
Titel: Problem bei kleinem Prog mit Schleife
Hi Leutz!
Also das Programm soll einfach die Dauer berechnen wie lang man sparen muss und ich find den Fehler einfach nicht, da er mir keine Dauer ausspuckt
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| procedure TForm1.Button1Click(Sender: TObject); var TG,Preis,Dauer,Guthaben : Integer; begin TG:=StrtoInt(EdTaschengeld.Text); Preis:=StrtoInt(EdPreis.text); Dauer:=0; Guthaben:=0; repeat Guthaben:=Guthaben+TG; Dauer:=(Dauer+1); until (Preis<=Guthaben); EdDauer.Text:=InttoStr(Dauer); end; |
Moderiert von
Christian S.: Delphi-Tags hinzugefügt
Christian S. - Mi 25.01.06 23:26
Hi!
Sei so gut und wähle doch bitte einen anderen Titel. Der jetzige sagt nicht allzu viel drüber aus, was das Thema dieses Threads ist.
Danke! :-)
Grüße
Christian
sPeeD2k5 - Mi 25.01.06 23:28
sry... aber anstatt über den titel zu meckern wärs ne antwort sinnvoller ;)
Blackbird - Mi 25.01.06 23:53
@speed2k5:
1. Wenn du von einem Mitglied des Forums darauf hingewiesen wirst, den Titel zu ändern weil er unpassend ist, dann hat das nix mit Meckern zu tun. Es ist von Nachteil, wenn man einen Titel wählt, der das Problem nur unzureichend beschreibt!
2. Zu deiner Frage: Du hast das Problem ja schon erkannt. Es liegt in der Schleife, die erst dann beendet wird, wenn Preis <= Guthaben. Das wird bei dir aber nie passieren, weil innerhalb der Schleife weder "Preis" noch "Guthaben" verändert wird.
sPeeD2k5 - Do 26.01.06 00:02
aber Guthaben+TG verändert doch eigentlich den eigentlichen wert von Guthaben um TG...
wie kann ich es dann lösen?
//und sry nochma wegen dem ton...
mkinzler - Do 26.01.06 00:06
Versuch mal die Abbruchbedingung umzudrehen
Delphi-Quelltext
1: 2: 3:
| ... until (Guthaben >= Preis); ... |
sPeeD2k5 - Do 26.01.06 00:17
funktioniert leider auch nicht :/ versteh auch nicht warum sich guthaben nicht ändern soll Oo
mkinzler - Do 26.01.06 00:26
Eigentlich sieht alles ok aus.
Hast du dein Programm mal im Debugger angeschaut, um zu shen wie die Werte sich verändern.
GGf Untilschleife durch whileschleife ersetzen.
WolfB - Do 26.01.06 01:09
hm. ich habe da auch keinen fehler gefunden und die prozedur einfach mal selbst getestet. bei mir klappt alles wie es sollte. hast du vielleicht irgendwas mit den eingaben falsch? oder mit der ausgabe?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!