Discuss Scratch
- Discussion Forums
- » Deutsch
- » Doppelte Fragen (Zufallszahlen) in einem Quiz vermeiden?
- ManuelK90
-
1 post
Doppelte Fragen (Zufallszahlen) in einem Quiz vermeiden?
Hallo Leute,
ich habe folgendes Problem, ich bin grad dabei ein Lernspiel zu erstellen. Es handelt sich dabei um geographisches Lernspiel mit Kartenmaterial und es werden nach Bezirken gefragt. Der Spieler klickt den jeweiligen richtigen Bezirk auf der Karte an und bekommt eine weiteren Bezirk abgefragt, wenn die Antwort richtig ist.
Die Abfrage funktioniert eigentlich ganz gut, nur will ich dass die Fragen zufällig gestellt werden . Also generiere ich jeweils eine Zufallszahl zwischen 1 und 13 (gibt 13 Bezirke) nach jeder richtigen Antwort. Wie kann ich vermeiden, dass die Zufallszahl doppelt generiert wird und das die Frage dopellt gestellt wird. Ich versuchte schon die generierten Zufallszahlen in einer Liste zu speichen, aber komme gerade echt nicht weiter
Vielleicht hat jemand einen Lösungsansatz?
Liebe Grüße
ich habe folgendes Problem, ich bin grad dabei ein Lernspiel zu erstellen. Es handelt sich dabei um geographisches Lernspiel mit Kartenmaterial und es werden nach Bezirken gefragt. Der Spieler klickt den jeweiligen richtigen Bezirk auf der Karte an und bekommt eine weiteren Bezirk abgefragt, wenn die Antwort richtig ist.
Die Abfrage funktioniert eigentlich ganz gut, nur will ich dass die Fragen zufällig gestellt werden . Also generiere ich jeweils eine Zufallszahl zwischen 1 und 13 (gibt 13 Bezirke) nach jeder richtigen Antwort. Wie kann ich vermeiden, dass die Zufallszahl doppelt generiert wird und das die Frage dopellt gestellt wird. Ich versuchte schon die generierten Zufallszahlen in einer Liste zu speichen, aber komme gerade echt nicht weiter

Vielleicht hat jemand einen Lösungsansatz?
Liebe Grüße
- Stegie1234
-
100+ posts
Doppelte Fragen (Zufallszahlen) in einem Quiz vermeiden?
Wenn die grüne Flagge angeklicktHilft das?
lösche (all v) aus [fragte v]
wiederhole bis <(Länge von [fragte v] :: list) = (Länge von [fragen v] :: list)>
wiederhole bis <nicht <[fragte v] enthält (n::variables) ?>>
setze [n v] auf (Zufallszahl von (1) bis (Länge von [fragen v] :: list))
end
füge (n) zu [fragte v] hinzu
frage (Element (m) von [fragen v] :: list) und warte
end
- KROKOBIL
-
100+ posts
Doppelte Fragen (Zufallszahlen) in einem Quiz vermeiden?
Erstelle zuerst eine Liste mit den Nummer aller Fragen:
Der Ansatz von @Stegie1234 macht das, was du schon versucht hast, hat allerdings das Problem, dass vor jeder Frage eine Schleife läuft.
Um keine Verzögerung dadurch zu verursachen, könntest du diese innere Schleife in einem eigenen Block ohne Bildschirmaktualisierung laufen lassen.
Wenn die grüne Flagge angeklicktDann kannst du folgendermaßen fragen:
lösche alles aus [Nummern v] :: list
setze [Nummer v] auf (1)
wiederhole (Länge von [Fragen v] :: list) mal
füge (Nummer) zu [Nummern v] hinzu
ändere [Nummer v] um (1)
end
wiederhole bis <(Länge von [Nummern v] :: list) = (0)> // solange es noch neue Fragen gibt
setze [Nummer v] auf (Zufallszahl von (1) bis (Länge von [Nummern v] :: list)) // Index der Nummer
setze [Frage v] auf (Element (Nummer) von [Nummern v] :: list) // Nummer der Frage
lösche (Nummer) aus [Nummern v] // Löscht die Nummer, damit sie nicht nochmal gefragt werden kann
frage (Element (Frage) von [Fragen v] :: list) und warte
end
Der Ansatz von @Stegie1234 macht das, was du schon versucht hast, hat allerdings das Problem, dass vor jeder Frage eine Schleife läuft.
Um keine Verzögerung dadurch zu verursachen, könntest du diese innere Schleife in einem eigenen Block ohne Bildschirmaktualisierung laufen lassen.
- Discussion Forums
- » Deutsch
-
» Doppelte Fragen (Zufallszahlen) in einem Quiz vermeiden?