public class RegistroDeNotas {
public static void main(String[] args) {
Materia matematica = new Materia("Matemáticas");
matematica.agregarNota(7.5);
matematica.agregarNota(11.0);
matematica.agregarNota(8.0);
matematica.agregarNota(-3.0);
matematica.agregarNota(9.5);
matematica.mostrarEstado();
}
static class Materia {
private String nombreMateria;
private List<Double> evaluaciones;
public Materia(String nombreMateria) {
this.nombreMateria = nombreMateria;
this.evaluaciones = new ArrayList<>();
}
public String getNombreMateria() {
return nombreMateria;
}
void agregarNota(double nota) {
if (nota >= 0 && nota <= 10) {
evaluaciones.add(nota);
} else {
System.out.println("Nota invalida ignorada: "+nota);
}
}
double calcularPromedio() {
double suma=0;
for (double nota : evaluaciones) {
suma += nota;
}
return suma/evaluaciones.size();
}
void mostrarEstado() {
if (evaluaciones.isEmpty()) {
System.out.println("No hay notas válidas para calcular promedio");
}else{
System.out.printf("Total de notas validas: %d%nPromedio en %s: %.2f"
,evaluaciones.size(),getNombreMateria(), calcularPromedio());
}
}
}
}