Autor Beitrag
minipliman
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17



BeitragVerfasst: Di 10.01.06 17:06 
also mein ziel ist es mit Canvas.TextOut 6 Zahlen Lottozahlen (1 bis 49) auszugeben, die dann auf knopfdruck sotiert werden.

ich bin jetzt schon am anfang an den zufallszahlen gescheitert

hier mein quelltext

ausblenden 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:
procedure TForm1.Button1Click(Sender: TObject);
 begin
 begin
 randomize; //Zufallszahl
 I:= random(50); //Zufallszahl von 0 bis 19
 IF I > 0 THEN  //schließt die 0 aus -> Zufallszahl ist 1 bis 49
 Canvas.TextOut(25, 40, inttostr(I));
 end;

 begin
 randomize;   //Zufallszahl
 J:= random(50); //Zufallszahl von 0 bis 19
 IF J > 0 THEN  //schließt die 0 aus -> Zufallszahl ist 1 bis 49
 Canvas.TextOut(25, 60, inttostr(J));
 end;

 begin
 randomize;   //Zufallszahl
 K:= random(50); //Zufallszahl von 0 bis 19
 IF K > 0 THEN  //schließt die 0 aus -> Zufallszahl ist 1 bis 49
 Canvas.TextOut(25, 80, inttostr(K));
 end;
 end;


also sind erstmal nur drei zahlen aber das auf 6 zu machen is ja kein problem

das problem ist das alle 3 zahlen gleich sind, obwohl ich jedesmal remdomize eingegeben hab. woran liegts?
Arno Nym
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 131



BeitragVerfasst: Di 10.01.06 17:14 
Hilfe zur Selbsthilfe :
guck einfach mal was in der Delphi-Hilfe über "Randomize" steht... :wink:
Bruder Lal
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 31

WIN XP
Delphi 2005
BeitragVerfasst: Di 10.01.06 17:15 
randomize sollte nur einmal ausgeführt werden. Abgesehen davon kannst du ein array machen, um die Zufallszahlen zu generieren. So sparst du dir die fast identischen Prozeduren. Und rück bitte richtig ein.. bei diesen Prozeduren ist das noch kein Problem, aber vielleicht programmierst du auch mal anspruchsvollere Sachen...
minipliman Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17



BeitragVerfasst: Di 10.01.06 17:25 
oh ja array is ne gute idee danke, werd ich gleich mal probieren
[SaWa]barrier23
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Mo 03.04.06 19:26 
ausblenden Delphi-Quelltext
1:
I:= random(50); //Zufallszahl von 0 bis 19					


was steckt da dahinter?man gibt 50 ein und hat die zahlen von 0-19!
was muss ich bei random eingeben damit ich die zahlen von 0-9 habe????



und dann brauch ich noch was für 0-1!also das entweder 0 oder 1 rauskommt!
Born-to-Frag
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1094

Win XP SP2, Win 2000 SP4
Delphi 7, 2k5
BeitragVerfasst: Mo 03.04.06 19:29 
user profile icon[SaWa]barrier23 hat folgendes geschrieben:
ausblenden Delphi-Quelltext
1:
I:= random(50); //Zufallszahl von 0 bis 19					


was steckt da dahinter?man gibt 50 ein und hat die zahlen von 0-19!
was muss ich bei random eingeben damit ich die zahlen von 0-9 habe????


Random(50) gibt Zufallszahlen von 0..49 und nicht 0..19 :mahn:
Random(10) gibt dann 0..9 aus..

Ich glaube du vergisst Randomize oder wie kommst du auf 0..19??


EDIT: 0..1 ist dann logischerweise Random(2); ;)

_________________
Theorie ist wenn man alles weiß, aber nichts funktioniert. Praxis ist wenn alles funktioniert, aber niemand weiß warum.
Microsoft vereint Theorie und Praxis: Nichts funktioniert und niemand weiß warum.
[SaWa]barrier23
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Mo 03.04.06 19:31 
ehm weils im quelltext dahinter steht ^^
alzaimar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2889
Erhaltene Danke: 13

W2000, XP
D6E, BDS2006A, DevExpress
BeitragVerfasst: Mo 03.04.06 19:50 
Mann, schon mal was von Tippfehleren gehört? :lol:

_________________
Na denn, dann. Bis dann, denn.
Born-to-Frag
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1094

Win XP SP2, Win 2000 SP4
Delphi 7, 2k5
BeitragVerfasst: Mo 03.04.06 19:51 
user profile icon[SaWa]barrier23 hat folgendes geschrieben:
ehm weils im quelltext dahinter steht ^^


omfg :rofl:

_________________
Theorie ist wenn man alles weiß, aber nichts funktioniert. Praxis ist wenn alles funktioniert, aber niemand weiß warum.
Microsoft vereint Theorie und Praxis: Nichts funktioniert und niemand weiß warum.
[SaWa]barrier23
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Mo 03.04.06 19:55 
naja als anfänger glaubt man halt das was einer mit so vielen sternen schreibt ;)
alzaimar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2889
Erhaltene Danke: 13

W2000, XP
D6E, BDS2006A, DevExpress
BeitragVerfasst: Mo 03.04.06 20:09 
Die Sterne bedeuten nur, das er viel labert. So wie ich.

_________________
Na denn, dann. Bis dann, denn.
Smarty
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 21



BeitragVerfasst: Mo 03.04.06 20:13 
das wusste ich auch noch nicht... :?
cuejo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 142

Win XP
Delphi 7 Personal und 2005 PE
BeitragVerfasst: Mo 03.04.06 23:35 
Titel: Kleiner Tipp:
probiers mal mit i:=random(49)+1;

Dann sparst du dir die nervige if i>0 Abfrage :dunce: