Estructuras de Control en Turbo Pascal

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 4,03 KB

Sentencias Compuestas

Las sentencias compuestas son grupos de sentencias, separadas por punto y coma (;), que se tratan como una sola sentencia. Se encierran entre las palabras reservadas BEGIN y END.

Ejemplo:

PROGRAM Prueba;
BEGIN
  WriteLn('Primera línea de una sentencia compuesta');
  WriteLn('Segunda línea de una sentencia compuesta');
  WriteLn('Tercera línea de una sentencia compuesta');
END.

El punto y coma antes de END es opcional.

Ciclos Repetitivos

Ciclos FOR

Repite una sentencia un número determinado de veces. Incrementa una variable en uno desde un valor inicial hasta un valor final.

Sintaxis:

FOR identificador := inicio TO fin DO instrucción;

Ejemplo:

PROGRAM Ciclo_FOR;
VAR
  Numero : Integer;
BEGIN
  FOR Numero := 1 TO 50 DO
    WriteLn(Numero);
END.

Para decrementar, se usa DOWNTO:

PROGRAM Ciclo_FOR_2;
VAR
  Numero : Integer;
BEGIN
  FOR Numero := 50 DOWNTO 1 DO
    WriteLn(Numero);
END.

Ciclos WHILE

La ejecución se realiza mientras se cumpla una condición.

Sintaxis:

WHILE condición DO instrucción;

Ejemplo:

PROGRAM Ciclo_WHILE;
VAR
  Numero : Integer;
BEGIN
  Numero := 1;
  WHILE Numero <= 50 DO
  BEGIN
    WriteLn(Numero);
    Numero := Numero + 1;
  END;
END.

Ciclos REPEAT-UNTIL

Similar a WHILE, pero la condición se evalúa al final, asegurando al menos una ejecución.

Ejemplo:

PROGRAM Ciclo_RepeatUntil;
VAR
  Numero : Integer;
BEGIN
  Numero := 1;
  REPEAT
    WriteLn(Numero);
    Numero := Numero + 1;
  UNTIL Numero = 50;
END.

Bifurcaciones Condicionales

Sentencia IF...THEN...ELSE

Ejecuta una sentencia si una condición es verdadera; de lo contrario, ejecuta otra sentencia.

Sintaxis:

IF condición THEN instrucción ELSE otra_instrucción;

Ejemplo:

PROGRAM IF_THEN_ELSE;
VAR
  Contador : Integer;
BEGIN
  FOR contador := 1 TO 50 DO
  BEGIN
    IF contador > 10 THEN WriteLn(Contador) ELSE WriteLn('*');
  END;
END.

La sección ELSE es opcional.

Sentencias IF Anidadas

Se pueden usar sentencias compuestas dentro de un IF o un ELSE, permitiendo evaluar varias condiciones.

Ejemplo:

IF Numero > 5 THEN
BEGIN
  IF Numero < 10 THEN opcion := Numero;
  IF Numero < 30 THEN opcion2 := Numero;
END;

Selecciones CASE

Evalúa una expresión con varios valores posibles, ejecutando una acción específica para cada valor.

Ejemplo:

PROGRAM Case;
VAR
  Numero : Integer;
BEGIN
  WriteLn('Introduzca un número entero del 1 al 5: ');
  ReadLn(Numero);
  CASE Numero OF
    1 : WriteLn('El número fue 1');
    2 : WriteLn('El número fue 2');
    3 : WriteLn('El número fue 3');
    4 : WriteLn('El número fue 4');
    5 : WriteLn('El número fue 5');
  ELSE WriteLn('El número no estaba en el rango indicado');
  END;
END.

Bifurcaciones Incondicionales

GOTO

Altera el flujo del programa, saltando a una etiqueta. Su uso no es recomendable en programación estructurada.

Sintaxis:

GOTO etiqueta;

Ejemplo:

PROGRAM Uso_del_GOTO;
LABEL Etiqueta;
BEGIN
  WriteLn('Esta línea sí se escribirá');
  GOTO Etiqueta;
  WriteLn('Esta línea no se escribirá');
Etiqueta:
  WriteLn('Se efectuó el salto');
END.

Entradas relacionadas: