[ Foro de Pascal ]

Duda con procedimiento y arreglo bidimensional

08-Aug-2014 12:37
Invitado (Ungato)
2 Respuestas

Buenas
Es una consulta muy grande
Es un programa que recopila datos de [u]5[/u] estudiantes y de este saca el promedio de notas*

Este tiene que desplegar un menú
la primera opcion dice:

"En caso de que el usuario seleccione la opción 1 del menú, el sistema debe solicitar al
usuario (Debe almacenarse en un vector bidimencional, que para este caso,
almacenará hileras de caracteres), esta opción debe ser programada en un
procedimiento, el cual será el encargado de administrar el vector:"

1. Número de Carné del Estudiante.
2. Nombre del Estudiante.
3. Cuatrimestre.
4. Nombre del Curso.

ENTONCES
para esta primera opcion necesito un procedimiento que administre el siguiente vector bidimensional:

__________/Número de Carné del Estud   /Nombre del Estud/Cuatrimestre/Nombre delCurso/
Alumno1 / _________________________ / _____________________ / ____________ /___________________ /
Alumno2/ _________________________ / _____________________ / ____________ /___________________ /
Alumno3 / _________________________ / _____________________ / ____________ /___________________ /
Alumno4/  _________________________ / _____________________ / ____________ /___________________ /
Alumno5/  _________________________ / _____________________ / ____________ /___________________ /

sé que se utilizaria algo asi como   "var alumnos:array[1..5,1..4] of string; "   en el procedimiento(procedure), pero no se como programarlo para que me pida por pantalla cada uno de los 4 datos y se guarden en dicho arreglo, tambien para despues mostra por pantalla los datos de cada alumno.

Asi que si no es mucha molestia me pueden guiar con esta duda, les estaria sumamente agradecido.[:-)]
saludos.


09-Aug-2014 01:07
Nacho Cabanes (+83)

La idea básica sería algo como


for alumno := 1 to 5 do
  begin
  writeLn('Introduzca el carné del alumno ', alumno);
  readLn( datos[ alumno, 1 ];
  writeLn('Introduzca el nombre del alumno ', alumno);
  readLn( datos[ alumno, 2 ];
  ...
  end;





09-Aug-2014 10:41
Invitado (Ungato)

Muchisimas gracias
me quedo asi:


procedure Infoestudiante;
var i:integer; Alumnos:array[1..5,1..4] of string;
begin
   for i:=1 to 5 do
   begin
       Writeln('Ingrese numero de Carne del estudiante: ',i);
       readln(Alumnos[i][1]);
       Writeln('Ingrese nombre del estudiante: ',i);
       readln(Alumnos[i][2]);
       Writeln('cuatrimiestre del estudiante : ',i);
       readln(Alumnos[i][3]);
       Writeln('Nombre del curso del estudiante: ',i);
       readln(Alumnos[i][4]);
       writeln();
   end;
end; 


son esas dudas que uno no se las saca xD gracias por tomarte el tiempo de responder.
saludos






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)