Trabajo de pascal

Solo disponible en BuenasTareas
  • Páginas : 7 (1670 palabras )
  • Descarga(s) : 6
  • Publicado : 5 de julio de 2010
Leer documento completo
Vista previa del texto
Ciclos FOR
El ciclo FOR repite una sentencia un determinado número de veces que se indica al momento de llamar al ciclo.
Lo que hace FOR es que incrementa una variable en uno desde un valor inicial hasta un valor final ejecutando en cada incremento la sentencia que se quiere repetir. Su sintaxis es:
FOR identificador := inicio TO fin DO instrucción;
Donde el identificador es la variable quese incrementará, inicio es el primer valor que tendrá dicha variable y fin es el valor hasta el cual se incrementará la misma; instrucción es la sentencia (sencilla o compuesta) que se ejecutará en cada incremento de la variable.
El siguiente ejemplo escribe los números del 1 al 50 en pantalla. La variable utilizada es "Numero".
PROGRAM Ciclo_FOR;
VAR
Numero : Integer;

BEGIN
FOR Numero :=1 to 50 DO
WriteLn(Numero);
END. |
Una de las limitaciones de los ciclos FOR es que una vez iniciado el ciclo se ejecutará el número de veces predefinido sin posibilidad de agregar o eliminar ciclos.
Es posible hacer que un ciclo cuente hacia atrás, es decir que la variable en lugar de incrementarse se decremente. Para ésto cambiamos la palabra TO por DOWNTO, y colocamos el valor mayor a laizquierda y el menor a la derecha. Ejemplo:
PROGRAM Ciclo_FOR_2;
VAR
Numero : Integer;

BEGIN
FOR Numero := 50 DOWNTO 1 DO
WriteLn(Numero);
END. |
Ciclos WHILE
Los ciclos WHILE ofrecen la ventaja de que la ejecución se realiza mientras se cumpla una condición, por lo tanto es posible controlar el número de repeticiones una vez iniciado el ciclo. Su sintaxis es:
WHILE condición DOinstrucción
Donde condición es la condición que se evaluará, mientras ésta sea verdadera se ejecutará la instrucción, que es una sentencia simple o compuesta.
Un programa que escriba los números del 1 al 50, utilizando el ciclo WHILE se vería como sigue:
PROGRAM Ciclo_WHILE;
VAR
Numero : Integer;

BEGIN
Numero := 1;
WHILE Numero <= 50 DO
BEGIN
WriteLn (Numero);
Numero := Numero +1;
END;END. |
Al final del programa la variable Numero guardará el valor 51, que fué el valor que no cumplió con la condición establecida en el ciclo WHILE.

CARACTERÍSTICAS Y SEMEJANZAS Y DIFERENCIA DE CICLO FOR Y WHILE
Las dos (FOR y WHILE) son estructuras iterativas (o repetitivas, o de repetición). Como su nombre lo indica, se usan en un programa cuando se quiere ejecutar un mismo grupo deacciones varias veces.

Características:
El FOR requiere que se defina y use una variable de control para saber cuándo salir del ciclo.
El WHILE no requiere esta variable.

Puede que el FOR no se ejecute ni siquiera una vez (por ejemplo, si el valor inicial es mayor que el final y el incremento es 1).
Puede que el WHILE no se ejecute ni siquiera una vez (si al llegar a él se encuentra que lacondición es falsa).

Tanto el FOR como el WHILE evalúan su condición para continuar ANTES de ejecutar el grupo de instrucciones (es por eso que se hace posible que no se ejecuten ni siquiera una vez).

Si no se tiene cuidado, el WHILE es más propenso a convertirse en un "ciclo infinito" o "loop", lo que significa que la condición nunca se hace falsa y el programa se queda ejecutando el grupo deinstrucciones indefinidamente (para siempre).

Cualquier ciclo FOR se puede convertir en un ciclo WHILE equivalente, pero no todo WHILE se puede convertir en un ciclo FOR.

Semejanzas:
Ciclos. Los formatos para los ciclos son:
while ( expresión ) instrucción ;
do instrucción while ( expresión ) ;
for ( expresión1 ; expresión2 ; expresión3 ) instrucción ;
La semántica de lainstrucción while debe ser evidente a la luz de su experiencia con PASCAL y la discusión sobre if de arriba. El ciclo do - while es similar al until de PASCAL. El ciclo for es algo distinto y le garantizo que una vez le agarre el gusto no podrá vivir sin él. Dicho de manera resumida, la expresión1 se ejecuta al comienzo de la ejecución del ciclo sólamente, la expresión2 se usa para determinar cuando se detiene...
tracking img