05_Praktikum-1_Pruefung/Pruefungsverwaltung.java

53 lines
1.8 KiB
Java
Raw Normal View History

2021-10-23 11:38:27 +02:00
import java.util.ArrayList;
2017-09-17 17:06:32 +02:00
/**
* Bietet Funktionalitaeten zum Speichern von Pruefungsergebnissen von einer
* Vielzahl von Studenten. Aus den gespeicherten Ergebnissen lassen sich
* personalisierte Antworttext generieren.
*/
public class Pruefungsverwaltung {
2021-10-23 11:38:27 +02:00
private ArrayList<Pruefungsergebnis> ergebnisse = new ArrayList<>();
2017-09-17 17:06:32 +02:00
/**
* Speichert ein Pruefungsergebnis.
*
* @param ergebnis Das Pruefungsergebnis.
*/
public void speichereErgebnis(Pruefungsergebnis ergebnis) {
// TODO Implementieren gemaess Aufgabenstellung
2021-10-23 11:38:27 +02:00
ergebnisse.add(ergebnis);
2017-09-17 17:06:32 +02:00
}
/**
* Gibt pro gespeichert Ergebnis einen Text auf die Konsole aus.
* Je nachdem ob der Kandidate die Pruefung bestanden (>= 4.0) oder nicht
* bestanden (< 4.0) hat, wird ein Text in folgendem Format ausgegeben:
2019-09-12 08:02:47 +02:00
* <p>
* Max Muster, Sie haben an der Prüfung die Note 3.0 erzielt und
2017-09-17 17:06:32 +02:00
* sind somit durchgefallen!
2019-09-12 08:02:47 +02:00
* <p>
* Herzliche Gratulation Max Muster! Sie haben an der Prüfung die Note 4.5
* erzielt und haben somit bestanden!
2017-09-17 17:06:32 +02:00
*/
public void druckeAntworttexte() {
// TODO Implementieren gemaess Aufgabenstellung
2021-10-23 11:38:27 +02:00
for(Pruefungsergebnis ergebnis : ergebnisse) {
double noteGerundet = rundeAufHalbeNote(ergebnis.getNote());
if(noteGerundet >= 4) {
System.out.println("Herzliche Gratulation " + ergebnis.getStudent() + "! Sie haben an der Prüfung die Note " + noteGerundet + " \n" +
"erzielt und haben somit bestanden!");
}
else {
System.out.println(ergebnis.getStudent() + ", Sie haben an der Prüfung die Note " + noteGerundet + " erzielt und sind somit \n" +
"durchgefallen!");
}
}
2017-09-17 17:06:32 +02:00
}
private double rundeAufHalbeNote(double note) {
return Math.round(note * 2) / 2.0;
}
}