Ciclo For
La sentencia FOR
En numerosas ocasiones se puede desear un bucle que se ejecute un número determinado de veces, y cuyo número se conozca por anticipado. Para aplicaciones de este tipo se utiliza la sentencia FOR.
La sentencia FOR requiere que conozcamos por anticipado el número de veces que se ejecutan las sentencias que seencuentran dentro del ciclo. El ciclo for se incremente automáticamente.
Sintaxis:
For variable := valor inicial to valor final do
Sentencia;
Ejemplos:
1.
For c := 1 to 5 do
Begin
Write (`aa´);
Write (`BB´)
End;
Al ejecutarse, visualiza:
AaBBaaBBaaBBaaBBaaBB
For Caracter := `A´ to `Z´ do
WriteLn(Caracter);
La sentencia REPEAT
Es una variante de la sentencia while. La sentencia REPEAT especifica un ciclo condicional que se repite hasta que la condición se hace verdadera.
El diagrama de flujo se representa de la siguiente manera:
Ciclos
El seudocódigo se representa así:
Repetir
Sentencias
Hasta_que condición
Sintaxis:Repeat
Begin
Sentencia 1;
Sentencia 2;
...
...
...
Sentencia n;
End;
Until expresion lógica
Ejemplo:
(* El siguiente programa imprime las secuencias de caracteres hasta que se presione cualquier tecla *)
Uses wincrt;
Var m : char;
n : integer;Begin
Repeat
Begin
Write ('a e i o u');
Write ('1 2 3 4 5');
End;
Until keypressed
End.
TEMA 7: CICLO FOR PASCAL
Instrucciones para ciclos resuelven el problema de repetir todo el programa o cierta parte del programa mas de una vez.
Este ciclo es uno de los mas usados para repetir una secuencia deinstrucciones, sobre todo cuando se conoce la cantidad exacta de veces que se quiere que se ejecute una instruccion simple o compuesta.
Su formato general es:
for VARCONTROL := ValorInicial to ValorFinal do
begin instrucciones; end;
EJEMPLO
Codigo prog4.pas
program prog4;
uses crt;
var
x:integer;
begin
clrscr;
for x:= 1 to 5 do
begin
gotoxy(10,4+x);write(x,'tecnologico');
end;
readln;
end.
corrida:
image236.jpg
En pascal solo puede haber incrementos de uno en uno, lo mas que existen son decrementos de uno en uno, usando la instruccion:
for VarControl := ValIniGde DOWNTO ValFinChico do
begin instruccion(es); end;
Se pueden usar los siguientes casos;
a) valor incial diferente de uno ejemplo for x:= 5 to 8 do etc
b) valorinicial negativo for x:= -5 to 3 do etc
c) para incrementos diferentes de uno en uno , usar dentro del begin end un acumulador del tipo x := x + 5 pero recordar que el ultimo valor del ciclo corresponda con el valor de parada o la maquina se les cicla y se van divertir mucho cuando esto les pase.
d) para decrementos diferentes de uno en uno usar una tecnica similar x:= x- 20 dentro de un ciclofor DOWNTO, pero recordar la nota anterior.
TEMA 9: CICLO REPEAT UNTIL PASCAL
Su diferencia basica con el ciclo while es que la prueba de condicion es hecha al finalizar el ciclo, es decir las instrucciones se ejecutan cuando menos una vez porque primero ejecuta las instrucciones y al final evalua la condicion;
Tambien se le conoce por esta razon como ciclo de condicion de salida.
Suformato general es :
cargar o inicializar variable de condicion;
repeat
begin
instrucciones;
end
until condicion;
OBSERVAR QUE NO LLEVA PUNTO Y COMA (;) ANTES DEL UNTIL
Prog6.PAS
program prog6;
uses crt;
var
x:integer;
begin
clrscr;
x:=1;
REPEAT
BEGIN
gotoxy(10,4+x);
write(x,' CONEJITO BLANCO HIMALAYA');
x:=x+1;
END
UNTIL x = 5;...
Regístrate para leer el documento completo.