Introducción a la Programación en Pascal: Conceptos Básicos y Ejemplos

Clasificado en Informática

Escrito el en español con un tamaño de 5,67 KB

**Tipos de Identificadores en Pascal**

**Identificadores Reservados**

Son palabras clave que tienen un significado especial en el lenguaje Pascal y no pueden ser utilizadas para otros propósitos.

  • program: Identifica que lo que sigue es un programa en Pascal.
  • const: Define la declaración de los datos constantes.
  • var: Define la declaración de datos variables.
  • begin: Identifica el comienzo del bloque ejecutable del programa.
  • end: Identifica el final del bloque ejecutable del programa (el último end lleva un punto).

**Identificadores Predefinidos**

Son identificadores que ya tienen un significado asignado en Pascal, pero que pueden ser redefinidos por el programador (aunque no es recomendable).

  • real: Tipo de dato predefinido para identificar elementos que representan números reales.
  • write y writeln: Primitivas predefinidas que permiten escribir texto o datos en la pantalla del dispositivo. La diferencia es que writeln baja de línea (ln) en la pantalla.
  • read: Primitiva predefinida que permite obtener (leer) valores de un dispositivo de entrada y asignarlos a una variable.

**Identificadores Definidos por el Usuario**

Son los nombres que la persona que escribe el código fuente elige para variables, constantes, procedimientos, etc.

  • CONST: "nombre" = "valor";
  • VAR: "nombre": "tipo de dato"; (si es más de uno, se separan por coma)

**Primitiva de Asignación**

"variable" := "expresión";

**Tipos de Datos en Pascal**

  • INTEGER: Para números enteros.
  • REAL: Para números reales.
  • CHAR: Para símbolos (caracteres).
  • BOOLEAN: Para valores lógicos (verdadero o falso).
  • STRING: Para cadenas de caracteres (cuando es más de un carácter).

**Operaciones según el Tipo de Dato**

**Operaciones con INTEGER**

  • Operadores aritméticos: +, -, *, div (división entera), mod (resto de la división entera).
  • Operadores relacionales: =, <>, >, <, >=, <=.
  • Funciones predefinidas: sqr() (devuelve el cuadrado de un entero), abs() (devuelve el valor absoluto de un entero).

**Operaciones con REAL**

  • Operadores aritméticos: +, -, *, / (división real).
  • Operadores relacionales: =, <>, >, <, >=, <=.
  • Funciones predefinidas: abs, exp, ln, round, sqr, sqrt y trunc.

**Operaciones con CHAR**

  • Operadores relacionales: =, <>, >, <, >=, <=.
  • Funciones predefinidas: chr(), ord(), succ(), pred().

**Operaciones con BOOLEAN**

  • Operadores lógicos: and, or, not.
  • Operadores relacionales: =, <>, >, <, >=, <=.

Recuerda que los operadores relacionales retornan un valor de tipo BOOLEAN (true o false).

**Sentencias de Control**

**Sentencia Condicional IF-THEN-ELSE**

Permite ejecutar un bloque de código u otro dependiendo de una condición.

Sintaxis:

if "condición" then "opción 1" else "opción 2";

Se pueden usar los operadores or, and y not para construir condiciones complejas.

**Sentencia Compuesta IF-THEN BEGIN-END-ELSE BEGIN-END**

Se utiliza cuando se quiere ejecutar más de una sentencia dentro de una rama del IF.

**Repetición Incondicional (Bucle FOR)**

Permite repetir un bloque de código un número determinado de veces.

Sintaxis:

for veces := 1 to 4 do begin "sentencias con ;" end;

(La variable veces debe ser de tipo INTEGER. Puede haber begin y end para ejecutar más de una sentencia en cada iteración).

**Repetición Condicional (Bucle WHILE)**

Permite repetir un bloque de código mientras se cumpla una condición.

Sintaxis:

while "condición" do (puede haber begin y end)

**Sentencia de Repetición Condicional REPEAT-UNTIL**

Similar al bucle WHILE, pero la condición se evalúa al final del bucle, por lo que el bloque de código se ejecuta al menos una vez.

Sintaxis:

repeat "secuencias" until "condición"

**Ejemplo de Algoritmo en Pascal**

Enunciado: Calcula el monto a pagar por un cliente. Se debe solicitar el monto de la compra y el tipo de comprador. Si el comprador es VIP o es su primera compra, se le aplica un descuento del 5% y no hay recargo por envío. De lo contrario, se debe solicitar la distancia de envío. Si la distancia es de 100 km o menos, no hay recargo por envío. Si la distancia está entre 100 y 1000 km, se debe agregar $200 de envío. Si la distancia es mayor a 1000 km, se debe indicar que se consulte por e-mail.

Entradas relacionadas: