![]() |
Problem bei Quiz mit Zufallszahlen
abc
|
AW: Problem bei Quiz mit Zufallszahlen
|
AW: Problem bei Quiz mit Zufallszahlen
Ich habe randomize schon mit drin. Ich habe nur das Problem das wenn ich auf den Weiter Button drücke jedes mal die selbe Frage im Label1 kommen kann.
|
AW: Problem bei Quiz mit Zufallszahlen
Du könntest sämtliche Fragen samt Antworten in einer Liste ablegen. Jede Frage, die angezeigt wird, wird dann gleich aus dieser Liste gelöscht, so kann es keine Doppler geben.
|
AW: Problem bei Quiz mit Zufallszahlen
Ja daran habe ich auch gedacht, allerdings hatten wir im Unterricht niemals Listen behandelt und ich weiß nicht genau wie das funktionieren soll bei dem Programm.
|
AW: Problem bei Quiz mit Zufallszahlen
Überhaupt keine Listen? Dann scheidet diese Möglichkeit wohl aus.
|
AW: Problem bei Quiz mit Zufallszahlen
Ne leider nicht.
|
AW: Problem bei Quiz mit Zufallszahlen
Mit einem Array ginge das auch, allerdings kann die Ermittlung einer noch nicht gestellten Frage vergleichsweise lange dauern. Dazu musst Du Dir zusätzlich zur Frage-/Antworten-Kombination noch in einem Booleanfeld merken, ob die Frage bereits gestellt wurde. Per Zufallsgenerator in einer Schleife läufst Du dann solange durch das Array, bis Du auf eine noch nicht gestellte Frage triffst. Allerdings solltest Du unbedingt mitzählen, wie viele Fragen bereits gestellt wurden, sonst landest Du in einer Endlosschleife.
|
AW: Problem bei Quiz mit Zufallszahlen
Wie siehts mit Arrays aus? Hattet ihr das schon?
Wenn ich mir deinen Code anschaue denk ich mal ja. Mach halt ein dyn. Array in dem du dir die Nr. der bereits gestellten Fragen merkst. Dann läßt du den Zufallsgenerator solange eine neue Nummer ausspucken, bis er eine hat, die noch nicht in dem Array steht und die nimmst du dann als nächstes (und schreibst natürlich diese Nummer nun auch in das array). |
AW: Problem bei Quiz mit Zufallszahlen
Hallöle...:P
Zitat:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin randomize; // das gehört hier nicht hin. Nur einmalig bei Programmstart. Im Form.Create hast du es korrekt. button1.visible:=false; label2.color:=clWhite; label3.color:=clWhite; label4.color:=clWhite; label5.color:=clWhite; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:48 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