Pascal/Turbo Pascal - ayuda en ejercicio con while

 
Vista:

ayuda en ejercicio con while

Publicado por esplu (15 intervenciones) el 28/11/2009 18:27:00
Hola, tengo un ejercicio que me dice:

Introduciendo un numero x de notas de los alumnos de una clase, di cuantos suspensos, aprobados,notables, sobresalientes y matriculas hay. (Utilizar while).

Gracias por la ayuda. Un saludo
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:ayuda en ejercicio con while

Publicado por Diego Romero (996 intervenciones) el 29/11/2009 04:24:13
¿Qué llevas hecho?
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:ayuda en ejercicio con while

Publicado por edwin (71 intervenciones) el 29/11/2009 06:08:11
creo que este ejercicio ya fue contestado en otra liga
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:ayuda en ejercicio con while

Publicado por esplu (15 intervenciones) el 30/11/2009 00:16:19
hola.

Pues si fueras tan amable de decirme donde te lo agradeceria.
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:ayuda en ejercicio con while

Publicado por esplu (15 intervenciones) el 30/11/2009 00:12:37
Esto e slo que llevo de programa:

program clase;

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

begin
clrscr;
write('escribe una nota: ');
readln(nota);
numNoPresentados:=numNoPresentados+1;
numSuspensos:=numsuspensos+1;
numAprobados:=numAprobados+1;
numNotables:=numNotables+1;
numSobresalientes:=numSobresalientes+1;
numMatriculasHonor:=numMatriculasHonor+1;

while (nota> -1) do
begin
if (nota= -1) then
write('el numero de no presentados es: ',numNoPresentados);
else if (nota>=0) and (nota<5) then
write('el numero de suspensos es: ',numSuspensos:0:0);
else if (nota>=5) and (nota<7) then
write('el numero de aprobados es: ',numAprobados:0:0);
else if (nota>=7) and (nota<9) then
write('el numero de notables es: ',numNotables:0:0);
else if (nota>=9) and (nota<10) then
write('el numero de sobresalientes es: ',numSobresalientes:0:0);
else if (nota=10) then
write('el numero de matriculas de honor es: ',numMatriculasHonor:0:0);

end;
repeat until keypressed;
end.

Gracias por tu interes, de verdad.
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:ayuda en ejercicio con while

Publicado por Diego Romero (996 intervenciones) el 30/11/2009 01:56:23
Bueno, este código no tiene mucho sentido ;).

Me parece que lo que debes hacer es esto:

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.

Nota que el ciclo while lo uso para pedir la nota continuamente mientras la nota sea menor a 11, si ingresas 11 sale del ciclo, mientras tanto voy comparando el valor para sumar al contador adecuado.

Finalmente muestro los sumadores una sola vez.

Además, los contadores los declaré de tipo integer porque siempre sumas +1. No es necesario que sean de tipo real.
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:ayuda en ejercicio con while

Publicado por esplu (15 intervenciones) el 30/11/2009 12:40:50
Muchas gracias, me ha servido de mucho, ahora solo me falta encajar los programas.
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