
/**
 * Beschreiben Sie hier die Klasse Klausur.
 * 
 * @author Rainer Helfrich
 * @version 1.0
 */
import java.util.ArrayList;

public class Klausur {
    private ArrayList<Integer> noten; // Attribut zur Speicherung der erfassten Noten

    /**
     * Konstruktor für Objekte der Klasse Klausur
     */
    public Klausur() {
        noten = new ArrayList<>();
    }

    /**
     * Gibt die Anzahl der bisher erfassten Noten zurück.
     */
    public int getAnzahl() {
        return noten.size();
    }

    /**
     * Gibt den Durchschnitt der bisher erfassten Noten zurück.
     */
    public double getDurchschnitt() {
        if (noten.isEmpty()) {
            return 0; // Rückgabe 0, wenn keine Noten erfasst wurden
        }

        int sum = 0;
        for (int note : noten) {
            sum += note;
        }

        return (double) sum / noten.size();
    }

    /**
     * Gibt die beste bisher erfasste Note zurück.
     */
    public int getBesteNote() {
        if (noten.isEmpty()) {
            return -1; // Rückgabe -1, wenn keine Noten erfasst wurden
        }

        int besteNote = noten.get(0);
        for (int note : noten) {
            if (note > besteNote) {
                besteNote = note;
            }
        }

        return besteNote;
    }

    /**
     * Gibt die schlechteste bisher erfasste Note zurück.
     */
    public int getSchlechtesteNote() {
        if (noten.isEmpty()) {
            return -1; // Rückgabe -1, wenn keine Noten erfasst wurden
        }

        int schlechtesteNote = noten.get(0);
        for (int note : noten) {
            if (note < schlechtesteNote) {
                schlechtesteNote = note;
            }
        }

        return schlechtesteNote;
    }

    /**
     * Setzt die erfassten Noten zurück.
     */
    public void reset() {
        noten.clear();
    }

    /**
     * Ermöglicht, eine neue Note einzutragen.
     * @param note  Die einzutragende Note von 0 bis 15 (einschließlich)
     */
    public void noteEintragen(int note) {
        if (note >= 0 && note <= 15) {
            noten.add(note);
        }
    }
}

