¿Separados por espacios? Mmm. Sería mejor por comas o tabuladores, o quizá no importe, hay que probar. Te doy una idea. Como es tarea ni modo de ponerte aquí todo resuelto ¿verdad?
En un TStringList cargas todo el archivo:
Código:
Archivo := TStringList.Create;
Archivo.LoadFromFile('alumnos.txt');
Recorres el archivo línea a línea:
Código:
for I := 0 to Archivo.Count - 1 do
begin
Linea := Archivo[i]; // Linea un String;
end;
Ahora, cada linea consta de la información de un alumno pero tienes que desglosar los distintos campos. Aquí es donde no estoy seguro de que funcione con espacios pero a probar:
Usas un segundo TStringList en el que cargas la línea así:
Código:
Campos.CommaText := Linea; // Campos el otro TStringList
En principio, ahro Campos es una lista de strings, cada string conteniendo uno de los campos:
Campos[0] - DNI
Campos[1] - Apellido
Campos[2] - Nombre
Campos[3] - Primera calificación
etc.
Así ya tienes las calificaciones por separado. Cada calificación la conviertes a un entero con StrToInt (o StrToFloat si tiene decimales) y ya de ahí sacas el promedio.
// Saludos