Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - FOR-Schleife
Delete - So 29.05.05 16:40
Titel: FOR-Schleife
Also ich bin dabei mit der turtle zu zeichenen.
das ist aber nicht so dass problem.
es geht eher um eine FOR schleifen, die nicht so will wie ich es will^^...
hier der quell code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, ExtCtrls, UTurtle;
type TForm1 = class(TForm) Turtle1: TTurtle; Button1: TButton; MainMenu1: TMainMenu; Datei1: TMenuItem; Beende1: TMenuItem; Button2: TButton; GroupBox1: TGroupBox; Edit1: TEdit; procedure Button1Click(Sender: TObject); procedure Beende1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private public end;
var Form1: TForm1; i: integer; ecken,winkel: real;
implementation
{$R *.DFM}
procedure TForm1.Beende1Click(Sender: TObject); begin form1.close; end;
procedure TForm1.Button2Click(Sender: TObject); begin ecken:=strtofloat(edit1.text); winkel:=360/ecken; for i:=1 to ecken do begin turtle1.turn(winkel); turtle1.Draw(15); end; end;
end. |
so der gibt mir aus, dass eine for schleife eine einfache lokale variable sein.
warum kann ich das so nicht machen?
die variable ecken is doch LOKAL?!
EDIT: ich möchte mit der turtle ein n-.eck zeichenen, wo man die ecken in edit1.text bestimmt.
Moderiert von
Tino: Topic aus Sonstiges verschoben am So 29.05.2005 um 22:39
WeBsPaCe - So 29.05.05 16:44
Wieso ist ecken ein Real und kein Integer? :gruebel:
Sprint - So 29.05.05 16:47
Titel: Re: FOR-Schleife
GrU3nL!nG hat folgendes geschrieben: |
so der gibt mir aus, dass eine for schleife eine einfache lokale variable sein.
warum kann ich das so nicht machen?
die variable ecken is doch LOKAL?! |
Weil die Variable I bei dir global und nicht lokal ist.
alias5000 - So 29.05.05 16:48
Ecken muss INTEGER sein, oder hast du schon mal versucht in ganzen Zahlen bis 2,5 zu zählen?
Delete - So 29.05.05 16:54
Also wenn ich ecken INTEGER mache siht die fehlermeldung so aus:
Ich hatte das auch schon ausprobiert...
Delete - So 29.05.05 16:56
hab es glöst!!!
es heißt nicht strtofloat sonder strtoint !!!
danke!
JayEff - So 29.05.05 16:57
Float=Gleitkommawert. Real=gleitkommawert => StrToFloat benutzen
Integer=Ganze Zahl. => IntToStr benutzen. (NICHT FLOATTOSTR xD)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 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!