Aufgrund des Info-Unterrichtes muss ich ein “Spiel” programmieren.
Meine Idee hierbei ist es, ein kleines Quiz zu erstellen.
Ich habe schon etwas Erfahrung mit Java gemacht, aber derzeit bin
ich vollkommen aufgeschmissen.
In diesem Quiz wollte ich jetzt natürlich immer meine Fragen neu laden und die
dazugehörigen Antworten.
Alle Fragen habe ich untereinander als “Fragen.txt” gespeichert.
Die Antwort zur Frage in der ersten Zeile, steht zum Beispiel in der
ersten Zeile der Datei “Antworten.txt” nach diesem Muster: Antwort1$Antwort2$Antwort3$Antwort4$
Mein Problem ist es, dass ich nicht hinbekomme, die Antwortmöglichkeiten
auszulesen, also nacheinander, und dass das Programm auch die Antworten
auf die 4 Buttons jedes Mal unterschiedlich anordnet.
Dazu sollen die Fragen auch am besten ständig zufällig ausgewählt werden.
Wenn ich das Spiel nämlich wiederholt spiele, kenne ich ja mittlerweile die Fragen
und weiß, wo die Antworten stehen.
Wie wäre es also möglich, die Fragen jedes Mal zufällig zu wählen und die dazugehörigen
Antworten jedes Mal auf die Buttons anders zu verteilen?
Wie könnte ich programmieren, dass wenn eine Frage schon einmal gewählt wurde,
sie dann “disabled” ist und nicht mehr gewählt wird?
[quote=KMS]Mein Problem ist es, dass ich nicht hinbekomme, die Antwortmöglichkeiten
auszulesen, also nacheinander, und dass das Programm auch die Antworten
auf die 4 Buttons jedes Mal unterschiedlich anordnet.
Dazu sollen die Fragen auch am besten ständig zufällig ausgewählt werden.[/quote]
Da wäre ein wenig Code ganz hilfreich.
Im Grund solltest du folgendes machen: Beim Start des Programms solltest du die Dateien komplett einlesen und in eine passende Datenstruktur überführen, bspw. List. Question wäre eine Klasse die du selbst schreibst und die Attribute String question und List<Answer> answers besitzt. Die Klasse Answer wiederum hat ebenfalls einen String der den text vorhält sowie einen boolean ob die Antwort korrekt ist oder nicht.
Darauf aufbauend kannst du eine zufällige Frage auswählen und dem User präsentieren.
[quote=KMS;86094]Wie könnte ich programmieren, dass wenn eine Frage schon einmal gewählt wurde,
sie dann “disabled” ist und nicht mehr gewählt wird?[/quote]
Nachdem eine Frage erfolgreich beantwortet wurde musst du das in der Fragen.txt entsprechend hinterlegen.
Und die Struktur der Anwtorten.txt ist wegen des „$“ als Trennzeichen etwas gemein. Zum Aufteilen der Zeile in die einzelnen Antworten würde sich nämlich die Methode String.split(„…“) anbieten. Da die eine sog. Regular Expression erwartet und „$“ bei Regular Expressions eine Sonderbedeutung hat, müsstest Du es escapen also zeile.split(„\$“). Aber an dem Punkt, dass Dir das Kopfzerbrechen bereitet, bist Du wohl noch nicht.