Advertisement
Guest User

Grades UZH

a guest
Oct 20th, 2014
479
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Urbi 1.89 KB | None | 0 0
  1. Anna betreut verschiedene Veranstaltungen und möchte Ende Semester für jede einzelne den Notenspiegel ihrer Studierenden zusammenstellen. Vor ihr liegen verschiedene, nach Veranstaltung getrennte Stapel von korrigierten und bewerteten Abschlussprüfungen. Allerdings sind die Stapel in keiner Weise sortiert. Sie wünscht sich, dass sie in einem Tool, welches ihre betreuten Fächer kennt, die Noten eingeben kann, indem sie eine Prüfung nach der anderen vom jeweiligen Stapel nimmt und deren Note eintippt. Das Tool soll zählen, wieviele Prüfungen mit einer bestimmten Note abgelegt wurden und am Schluss den Notenspiegel ausgeben.
  2. [================================]
  3. Erstellen Sie dazu eine Klasse Grades, welche ganzzahlige Noten einlesen und zählen kann. Via Setter soll per String festgelegt werden können, von welchem Fach die Noten gespeichert werden. Die Noten selber, d.h. die Anzahl Prüfungen je Note, werden in einem int-Array abgespeichert. Standardmässig umfasst die Notenskala die Noten von 1 bis 6. Es soll aber auch möglich sein, eine andere Maximalnote zu definieren. Sie muss sinnvollerweise allerdings mindestens 2 betragen.
  4. [================================]
  5. In der Methode collectGrades() sollen über die Kommandozeile solange Keyboard-Inputs eingelesen und verarbeitet werden, bis keine int-Werte mehr eingegeben werden. Verwenden Sie dazu einen Scanner. Wird ein im Notenbereich liegender int-Wert eingelesen, wird das entsprechende Feld im Array, welches die Anzahl der betreffenden Note speichert, um 1 erhöht. Beispiel (Pseudocode mit alphabetischen Noten): Wird die Note A eingegeben, soll das Feld des Arrays, welches die Anzahl aller erreichten Noten A speichert, um 1 erhöht werden:
  6.  
  7.      noten[A] = noten[A] + 1;
  8.  
  9. Fügen Sie der Klasse die Methode printGrades() hinzu, welche je die Anzahl Prüfungen mit der entsprechenden Note ausgibt.
  10. Testen Sie die Methoden in einem TestDriver.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement