Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Estructura de control repetitiva while (https://www.clubdelphi.com/foros/showthread.php?t=89072)

andrecuellar 23-09-2015 00:49:43

Estructura de control repetitiva while
 
buenas a todos, soy nuevo en esto del delphi y recién estoy empezando a entender, y bueno me pidieron lo siguiente:

Dado N notas finales, muestre la cantidad de aprobados y reprobados.

Por Ejemplo: 31, 51,45,35,90,65,25 (nota de aprobación: 51 o más, nota de reprobación: 50 o menos, nota máxima: 100, nota mínima: 0)

Aprobados= 3

Reprobados = 4

Haga el diseño y la codificación utilizando la estructura WHILE.


y bueno la verdad que no se me ocurre muy bien como hacer esto pues no había hecho que colocando cierto número de notas me diga cuantas aprobaron y cuantas no, yo he hecho otro tipo de ejercicios como factoriales y esas cosas y pues ahora quiero saber el tema de las variables con esto, puesto que tendria que añadir N variables dependiendo de N notas que necesite colocar, es esto posible? me pueden ayudar con la codificacion? mejor si es del botón completo gracias de antemano


si es que no es posible hacer lo que yo quiero de N notas entonces que sean 7 notas, si es posible, gracias

AgustinOrtu 23-09-2015 03:35:28

Bienvenido al Club.

Por lo general en este tipo de casos nos gusta mas ayudar a pensar que resolver el problema :)

La solucioon a este problema es muy similar a lo que venias haciendo. Solamente que en este caso no se conoce el numero de iteraciones. No necesitas N variables

Es decir, antes tendrias una estructura similar a esta:


Código Delphi [-]
var
  I: Integer; // indice del for
  Total: Integer; // total de datos a procesar
begin
  ReadLn(Total); // leer por la entrada estandar (consola) y guardar en variable total
  for I := 0 to Total - 1 do
  begin
    // procesar el elemento I
 end;
end;

En lineas generales, el for recorre desde I hasta N todos los elementos. El while es una estructura que no maneja un indice, simplemente se repite mientras (de ahi su nombre) la condicion que evalua sea verdadera


Ejemplos sencillos:

Código Delphi [-]
  while True do
  begin
   WriteLn('este codigo se ejecutará por lo siglos de los siglos !');
  end;

Código Delphi [-]
var
  Condicion: Boolean;
begin
  while Condicion do
  begin
   WriteLn('este codigo se ejecutará por lo siglos de los siglos a menos que alguien ponga "Condicion" en Falso !');
  end;

Código Delphi [-]
var
  I: Integer;
begin
  I := 0;
  while I < 10 do
  begin
    I := I + 1;
    Writeln('La variable I ahora vale ' + IntToStr(I));
  end;

Espero te sirva

Casimiro Notevi 23-09-2015 09:46:41

Cita:

Empezado por AgustinOrtu (Mensaje 497012)
Bienvenido al Club.
Por lo general en este tipo de casos nos gusta mas ayudar a pensar que resolver el problema :)

^\||/^\||/^\||/


La franja horaria es GMT +2. Ahora son las 07:25:11.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi