Cita:
Iniciado por SetheR
En el primer foreach, creo que no debes poner el "else" y menos con un break, ya que éste acaba la ejecución del foreach, y dejaría fuera del array a los alumnos de ese grado que estuviesen listados después del que estás tratando.
Cierto ! acabo de testearlo

Ya veo que voy a tener que implementar un while :/