Hilfe benötigt! Schulprojekt: Quiz

Status
Nicht offen für weitere Antworten.

Andro_Java

Neues Mitglied
Hallo liebe Member!

Ich bin durch einen Kumpel auf diese hilfreiche Seite gestoßen und dachte mir, ich hol mir gleich mal einbißchen Hilfe. Kommen wir nun auch gleich zum Wesentlichen. Ich bin in der 12 Klasse und hab Informatik als Leistungskurs.
Klingt spannend und interessant, kann aber auch nervenzerrend sein. Ich will nicht sagen, dass unser Lehrer schlecht ist, aber einiges würde ich anders machen, um es meinen Schülern so verständlich wie möglich zu machen. Nun ja, seit dem zweiten Halbjahr haben wir jetzt schon Java, um es zu erwähnen.

Ich hab nun die Aufgabe ein Projekt "Quiz" in Java zu implementieren. Eine wirkliche Aufgabenstellung gibt es nicht, aber ich kann ja mal aufzählen, was alles erwartet wird. Nämlich:
- Feld Array muss mind. 1x vorkommen
- 10 zufällige Fragen
- 3 Joker
- am Ende der 10 Fragen erfolgt eine Auswertung (richtig/falsch -> Anzahl)
- UML-Diagramm (muss ich schon Freitag abgeben)
--> jede Beziehung (Assoziation, Aggregation, Vererbung) muss mind. 1x vorkommen
- Begründung der Datentypen
- Kurzbeschreibung der Methoden


In der Schule arbeiten wir mit dem JavaEditor von Garhard Röhner.

Ich würde mich freuen, wenn mir so viele Leute wie möglich einen Schubser auf den richtigen Weg zum erfolgenreichen Gelingen geben könnten.

Ich hab mir das so gedacht, dass ich die Fragen und die Antworten (3Stück an der Zahl) in diesem Array unterbringe. Hab bloß noch keine Ahnung wie das geht. Weiterhin wüsste ich nicht wie die Fragen zufällig ausgewählt werden sollen, wie ich die Joker mit den Fragen und Antworten verbinden kann, wie die Auswertung geht und wie das UML genau aussehen soll.

Ich würde mich über hilfreiche Antworten freuen und bedanke mich schon mal recht herzlich im Voraus.

LG Andro
 

masta // thomas

Bekanntes Mitglied
Hey Andro,

zunächst mal würde ich dir empfehlen, dir Eclipse als Entwicklungsumgebung anzuschauen, evtl. findest du Gefallen daran - ich persönlich finde es wesentlich angenehmer, als JavaEditor von G.R. ;)

Zu deiner / deinen Frage/n.
Du hast dir gedacht, die Fragen und Antworten in einem Array unterzubringen. Davon würde ich dir abraten. Du solltest bei deinem Quiz Wert darauf legen, schön objektorientiert zu bleiben. D.h. jede deiner Fragen lagerst du als Objekt aus. In das Objekt packst du dann die jeweiligen Eigenschaften rein, z.B. die Frage selbst. Zu jeder Frage gehören 3 Antworten, sagst du. Jede Antwort würdest du demzufolge auch als Objekt auslagern, die Eigenschaften eines Antwort-Objektes könnten sein die Antwort selbst und ein Flag, ob die Antwort die richtige Antwort ist, oder nicht.
Es würde sich dann anbieten, in dein Frage-Objekt ein Array vom Typen Antwort zu erstellen, in welches dann 3 Antwort-Objekte reinkommen.
Deine so fertigen Fragen inkl. Antworten könntest du entweder in ein Array oder eine andere Collection packen (ArrayList z.B.).

Um an eine zufällige Frage zu kommen könntest du eine zufällige Zahl ermitteln - ein Beispiel hierfür wäre int randomQuestionNumber = new java.util.Random().nextInt(questions.length); - welche du dann als Index benutzen kannst, um deine Frage aus der Collection zu holen.

Zu den Jokern - sollen das Joker ala Wer wird Millionär werden? 50:50 Joker wäre in dem Fall schlecht, wenn du nur 3 Antworten als Lösungsmöglichkeiten benutzt. Telefonjoker könnte im einfachsten Fall einfach zufällig eine der 3 Antworten als Lösung nennen.

Um die Auswertung erstellen zu können, könntest du jede Beantwortung eine Frage protokollieren, also auch in eine Collection speichern. Dabei müsstest du jeweils speichern, ob die Antwort richtig oder falsch war. Anschließend ist es eigentlich trivial - die Collection einmal durchlaufen, ausgeben, wieviele Fragen richtig oder falsch waren, evtl. noch ein paar mathematische Grundrechnungen um das ganze in prozentualer Ausgabe zu bekommen.

Ich hoffe, du kannst damit einen kleinen Ansatz finden. Allerdings habe ich einige Bedenken, wenn es dir schwierigkeiten Bereitet, die Fragen + Antworten in ein Array unterzubringen. Oder hat dir da einfach nur der Ansatz gefehlt?


Grüße
Thomas
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben