Pascal/Turbo Pascal - Programa Estadísticas Notas

 
Vista:

Programa Estadísticas Notas

Publicado por mexicana (9 intervenciones) el 30/11/2009 19:47:22
Hola, estoy pensando en hacer el siguiente problema, pero no sé bien cómo sería la estructura a usar, ayuda por favor:
programa que permita introducir por teclado un número indefinido de notas de alumnos entre 0 y 10. Si el usuario introduce la nota -1 el programa la interpretará como un no presentado. Cuando el usuario acabe de meter las notas, introducirá cualquier número negativo distinto de -1. Entonces, el programa mostrará:
Nota mínima, Nota máxima, Nota media, Número de alumnos, No presentados, Suspensos [0, 5), Aprobados [5, 7], Notables [7, 9], Sobresalientes [9, 10) y Matrículas de Honor [10]. Tengo que usar while.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Programa Estadísticas Notas

Publicado por mexicana (9 intervenciones) el 30/11/2009 20:07:24
Por cierto, esto me ha ayudado bastante, es algo que tenía ya mas o menos hecho, el resto es lo que se me atraganta

var
nota:real;
numNoPresentados,numSuspensos,numAprobados,numNotables,numsobresalientes,numMatriculasHonor:integer;

begin
clrscr;
write('escribe una nota (-1 para terminar: ');
readln(nota);
while (nota < 11) do
begin
if nota < 0 then
numNoPresentados:=numNoPresentados+1;
if (nota > 0) and (nota <5) then
numSuspensos:=numsuspensos+1;
if (nota >=5) and (nota <7) then
numAprobados:=numAprobados+1;
if (nota >=7) and (nota <9) then
numNotables:=numNotables+1;
if (nota = 9) then
numSobresalientes:=numSobresalientes+1;
if (nota = 10) then
numMatriculasHonor:=numMatriculasHonor+1;
write('escribe una nota (11 para terminar): ');
readln(nota);
end;

WriteLn('Resultados: ');
WriteLn('el numero de no presentados es: ',numNoPresentados);
WriteLn('el numero de suspensos es: ',numSuspensos);
WriteLn('el numero de aprobados es: ',numAprobados);
WriteLn('el numero de notables es: ',numNotables);
WriteLn('el numero de sobresalientes es: ',numSobresalientes);
WriteLn('el numero de matriculas de honor es: ',numMatriculasHonor);
WriteLn('Presione cualquier tecla para salir...');
repeat until keypressed;
end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Programa Estadísticas Notas

Publicado por Alexis (44 intervenciones) el 01/12/2009 13:10:43
" Si el usuario introduce la nota -1 el programa la interpretará como un no presentado. Cuando el usuario acabe de meter las notas, introducirá cualquier número negativo distinto de -1. Entonces, el programa mostrará"

No estás cumpliendo con esa parte del planteamiento. Cuando el usuario introduce -1 significa que el estudiante no presentó. SI el valor es menor a este entonces se muestran los resultados.

repeat until keypressed; ---> quita esa sentencia pues es innecesaria, para detener la pantalla utiliza mejor readkey; que tiene el mismo efecto.

Ahora, para contabilizar el numero total de estudiantes, utiliza un contador

if nota < 0 then
numNoPresentados:=numNoPresentados+1;

else begin
cantidad_alumnos:=cantidad_alumnos+1;

if (nota > 0) and (nota <5) then
numSuspensos:=numsuspensos+1;
else if (nota >=5) and (nota <7) then
numAprobados:=numAprobados+1;
else if (nota >=7) and (nota <9) then
numNotables:=numNotables+1;
else if (nota = 9) then
numSobresalientes:=numSobresalientes+1;
else if (nota = 10) then
numMatriculasHonor:=numMatriculasHonor+1;
write('escribe una nota (11 para terminar): ');
readln(nota);

end; //este end finaliza el gebin que yo coloqué nuevo

Para lo de las notas minias y maxima utiliza un if

if(nota<nota_minima) nota_minima:=nota;
if(nota>nota_maxima) nota_maxima:=nota;

Cuando te piden "nota_media" se refieren al promedio? Si es así entonces eso te lo dejo a tí ;)

Saludos y espero haberte ayudado!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Programa Estadísticas Notas

Publicado por mexicana (9 intervenciones) el 01/12/2009 13:31:37
Mil gracias Alexis!! La parte de las notas, del -1 y todo eso lo habia arreglado esta mañana haciendo unos cambios, ya en eso no me quedaba ningún problema, lo único que me quedaba era calcular la nota minima, la maxima, la media (que ya la he sacado tambien y me funciona bien), y el numero de alumnos. Seguiré trabajando en ello y comunicaré si todo ha ido bien. Muchas gracias por tu ayuda Alexis, siempre se agradece ver un poquito de luz al final del tunel. Espero que esto ayude tambien a otras personas con dudas similares :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar