package grades;

/**
 * Las notas de una evaluación, en escala vigesimal.
 * Invariante: cada nota está entre 0 y 20.
 */
public class Scores {
    private final int[] values;

    public Scores(int[] values) {
        for (int v : values) {
            if (v < 0 || v > 20) {
                throw new IllegalArgumentException("nota fuera de 0..20: " + v);
            }
        }
        this.values = values.clone();      // copia defensiva al entrar
    }

    /** Devuelve una copia: cambiarla no cambia estas notas. */
    public int[] values() {
        return values.clone();             // copia defensiva al salir
    }

    public int highest() {
        int best = 0;
        for (int v : values) {
            best = Math.max(best, v);
        }
        return best;
    }
}
