![]() |
Delphi-Version: 7
Probleme mit FOR-Schleife
Hallo,
ich komm gleich zu Sache: Ich habe ein Problem mit einer FOR-Schleife. Ich möchte mit einer FOR-Schleife die Wurzel/das Quadrat aus 1 bis 25 ausrechnen. Das Ganze möchte ich dann in einer ListBox ausgeben. Nun, mein Code sieht bisher so aus:
Delphi-Quellcode:
Wenn ich auf "Start" drücke kommt eine Fehlermeldung, welche lautet:
procedure TForm1.Button2Click(Sender: TObject);
var WaI:extended;Qva,a:integer;i:integer; Begin For i:=1 to 25 do ; begin WaI:=sqrt(i) ; i:=integer(ListBox1.Items) ; For a:=1 to 25 do Begin Qva:= sqr(i); a :=integer(ListBox2.Items) ; end; Zitat:
Und ich hab noch ne zweite Frage: Wie kann ich das Ganze in ner ListBox ausgeben? Hab es mit dem Obenstehenden Code versucht, dann kommt aber beim Quadrat die Fehlermeldung Zitat:
Ich hoffe ihr könnt mirin beiden Fragen helfen! Gruß, timmy PS: 1. Zeile 62 ist längst hinter den letzten "End". 2. Bin Delphi-Neuling |
AW: Probleme mit FOR-Schleife
Bitte stell nur eine Frage pro Beitrag, sonst geht hier alles durcheinander.
Zu deiner ersten Frage. Da fehlt wohl irgendwo ein Semikolon oder ein End. |
AW: Probleme mit FOR-Schleife
Hallo und Willkommen in der DP :dp:,
wenn Du richtig einrückst, wirst Du feststellen, dass 2 "end"s fehlen und ein Semikolon zuviel ist. |
AW: Probleme mit FOR-Schleife
Zitat:
Das Semikolon und das 2.End finde ich aber nicht. Wo müssen die hin? |
AW: Probleme mit FOR-Schleife
Zeile 62 ist kaum hilfreich als Information, das Semikolon ist zuviel nach dem do
so, sollte es aussehen
Delphi-Quellcode:
gegf. fehlt bei Dir am Dateiende noch
procedure TForm1.Button2Click(Sender: TObject);
var WaI: extended; Qva, a: Integer; i: Integer; Begin For i := 1 to 25 do begin WaI := sqrt(i); i := Integer(ListBox1.Items); end; For a := 1 to 25 do Begin Qva := sqr(i); a := Integer(ListBox2.Items); end; End;
Delphi-Quellcode:
end.
|
AW: Probleme mit FOR-Schleife
@Bummi: Danke! :)
Nun hab ich aber noch ne Frage: Er gibt mir immer noch diese Fehlermeldung: Zitat:
Zitat:
|
AW: Probleme mit FOR-Schleife
wenn ich mal rate was Du vorhaben könntest
Delphi-Quellcode:
procedure TForm2.Button2Click(Sender: TObject);
var WaI: extended; Qva, a: Integer; i: Integer; Begin For i := 1 to 25 do begin WaI := sqrt(i); ListBox1.Items.Add(FloatToStr(WaI)); // oder //ListBox1.Items.Add(FormatFloat('0.000',WaI)); end; For a := 1 to 25 do Begin Qva := sqr(a); ListBox2.Items.Add(FloatToStr(Qva)); end; End; ![]() |
AW: Probleme mit FOR-Schleife
Ja, du hast Recht.
Trotzdem gibts wieder ne neue Fehlermeldung. Diesmal sieht sie so aus: Zitat:
PS: Sorry, wenn ich nerv, aber ich weiß echt nicht weiter... |
AW: Probleme mit FOR-Schleife
am Ende der Datei muss immer
Delphi-Quellcode:
stehen ....
end.
|
AW: Probleme mit FOR-Schleife
Zitat:
Danke, es funzt! :) Trotzdem hätt ich noch eine Frage: Habe jetzt bei beiden geschrieben:
Delphi-Quellcode:
Mit diesem Befehl soll er die jeweilige Zahl (also 1- 25) davor setzten. Soweit geht das auch. Leider ist steht bei Quadrat IMMER 26, anstatt die jeweilige Zahl. Bei der Wurzel geht es komischer Weise einwandfrei...
ListBox2.Items.Add(IntToStr(i)+ ':' + FloatToStr(Qva));
|
AW: Probleme mit FOR-Schleife
Und bei IntToStr statt FloatToStr?
|
AW: Probleme mit FOR-Schleife
Zitat:
Ich versteh halt nicht, warum er es bei der Wurzel richtig macht, aber beim Quadrat nicht. |
AW: Probleme mit FOR-Schleife
Zeig doch mal den ganzen Code, da stimmt doch was nicht.
|
AW: Probleme mit FOR-Schleife
Zitat:
Delphi-Quellcode:
Wie gesagt, bei der Wurzel funzts.
begin
For a := 1 to 25 do Begin Qva := sqr(a); ListBox2.Items.Add(IntToStr(i)+ ':' + FloatToStr(Qva)); end; end |
AW: Probleme mit FOR-Schleife
Ach, Du meinst vor dem Doppelpunkt? Dann ist das klar, da die Schleifenvariable a ist, Du aber i abfragst.
|
AW: Probleme mit FOR-Schleife
Zitat:
So, ich häufe euch heute mit fragen. Wie kann man das selbe von Oben mit selbst eingegebenen Zahlen machen? Meine Idee ist das hier:
Delphi-Quellcode:
Jetzt sagt er mir aber:
procedure TForm1.Button4Click(Sender: TObject);
var Wamn: extended; i: Integer; Begin For i := m to n do begin m:= Edit1.Text n:= Edit2.Text Wamn := sqrt(i); ListBox1.Items.Add(IntToStr(i) +':' + FloatToStr(Wamn)); end; Zitat:
|
AW: Probleme mit FOR-Schleife
Mit StrToInt (oder besser TryStrToInt oder IntToStrDef). Allerdings solltest Du Dir wirklich einmal den Crashkurs reinziehen, sonst wird das auf Dauer nix.
|
AW: Probleme mit FOR-Schleife
Der Link zum Crashkurs ist in #7
|
AW: Probleme mit FOR-Schleife
Hallo,
ich bin's nochmal.Kein Angst ich habe mir den Crashkurs (zumindest bisschen)durchgelesen. Trotzdem komme ich mit den Fehlermeldung oft nicht klar. Deswegen nochmal eine Frage zu dem Programm von gestern. Ich möchte die Wurzel von n bis m ziehen Der Code sieht bisher so aus:
Delphi-Quellcode:
Es kommt bei der Zeile "For i:= n to m do" die Fehlermedung hier:
For i := n to m do
begin m:= StrToInt(Edit1.Text ); n:= StrToInt(Edit2.Text ); Wamn := sqrt(i); ListBox1.Items.Add(IntToStr(i) +':' + FloatToStr(Wamn)); end; end; end. Zitat:
|
AW: Probleme mit FOR-Schleife
Wie sind m und n denn deklariert? Außerdem solltest Du diese besser vor Schleifenbeginn zuweisen.
|
AW: Probleme mit FOR-Schleife
Zitat:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var m,n, Wamn: extended; i: Integer; Begin m:= StrToInt(Edit1.Text ); n:= StrToInt(Edit2.Text ); For i := n to m do begin Wamn := sqrt(i); ListBox1.Items.Add(IntToStr(i) +':' + FloatToStr(Wamn)); end; end; end. |
AW: Probleme mit FOR-Schleife
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var m,n : integer; // <- als Integer deklarieren Wamn: extended; i: Integer; Begin // ERST die Werte für m und n holen m:= StrToInt(Edit1.Text ); n:= StrToInt(Edit2.Text ); // und DANN können wir durch die Schleife laufen For i := n to m do begin Wamn := sqrt(i); ListBox1.Items.Add(IntToStr(i) +':' + FloatToStr(Wamn)); end; end; end. |
AW: Probleme mit FOR-Schleife
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:10 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