Вы находитесь на странице: 1из 12

Apunte de PASCAL básico

Para poder programar en cualquier lenguaje es necesario conocer los códigos mediante los cuales podamos expresar las
tareas que queremos realizar. El Turbo Pascal como lenguaje de programación posee su propio código con palabras de
uso exclusivo para ciertas funciones, a estas palabras se les llama palabras reservadas.
PALABRAS RESERVADAS EN PASCAL SON:

AND ARRAY BEGIN CASE CONST DIV


DO DOWNTO ELSE END FILE FOR
FUNCTION GOTO IF IN LABEL MOD
NIL NOT OF OR PACKED PROCEDURE
PROGRAM RECORD REPEAT SET THEN TO
TYPE UNTIL VAR WHILE WITH
IDENTIFICADORES
Son palabras que representan constantes, variables, tipos de datos, procedimientos, funciones y algunos otros datos.
Existen dos tipos de identificadores: los predefinidos por Turbo Pascal y los definidos por el programador.
Algunos de los identificadores predefinidos son: integer, real, sin, etc.
Los identificadores definidos por el programador son los elementos del lenguaje tales como variables, procedimientos,
funciones, etc.
Un identificador es una secuencia de 1 a 127 caracteres, que se inicia con una letra, no deben tener espacios en blanco
ni símbolos especiales y no ser una palabra reservada.
Para el Turbo Pascal no existen diferencias entre mayúsculas y minúsculas, así que a un identificador denominado valor
se le puede referir como VALOR o VaLoR.
Todo identificador en Pascal debe ser definido antes de su utilización.
ESTRUCTURA DE LOS PROGRAMAS
El lenguaje utilizado en Turbo Pascal es estructurado, lo que significa que cada programa requiere una forma específica
de escritura para que sea entendido por el compilador.
Todo programa cuenta con algunas partes o módulos los cuales son:
Cabecera
Declaraciones
Programa
La cabecera del programa únicamente lleva el nombre del programa. En la sección de declaraciones se le indican al
compilador, todos los identificadores y unidades que se utilizaran durante la ejecución del programa. En la sección del
programa se escribe el código de instrucciones que se llevarán a cabo.
SENTENCIA PROGRAM
Es la declaración de nombre del programa. Consta de tres parte: la palabra reservada PROGRAM, a continuación un
identificador utilizado como el nombre del programa y al final un punto y coma";".
Por ejemplo:
PROGRAM prog_uno;
Esta declaración es siempre la primera línea del programa.
DECLARACIÓN DE UNIDADES
Las unidades son módulos independientes del programa que, aunque no son ejecutables por si mismos, pueden ser
utilizados por el programa principal sin necesidad de reescribir el código que contienen, para la utilización de estos
"subprogramas" en necesaria su declaración.
La palabra reservada USES cumple el propósito de declarar las unidades en el formato siguiente:
USES crt, dos;
Esta línea declara y habilita para su uso a la unidad crt y la unidad dos
Cada unidad que se declara debe estar separada de la siguiente por una coma. Al final de todas las unidades declaradas
2Ñinst El blog del Segundo Ñ – 2nninst.tk
se deberá colocar un punto y coma ";".
VARIABLES Y CONSTANTES
Los tipos de datos que manejaremos en nuestros programas pueden ser de dos clases: variables o constantes.
Como su nombre lo indica, las variables pueden cambiar su contenido a lo largo de la ejecución de un programa, en
cambio las constantes serán valores fijos durante todo el proceso.
Las variables y constantes pueden ser de todo los tipos anteriormente indicados.
DECLARACIÓN DE CONSTANTES Y VARIABLES
Para declarar las constantes se utiliza la palabra reservada CONST seguida de un identificador al que se dará un valor
determinado, un signo igual “=”, el valor que recibirá el identificador y al final un puno y coma “;”.

Ejemplo:
CONST pi = 3.1415926;
De esta forma, el identificador “pi” recibirá el valor de 3.1415926 y no será posible cambiarlo en el transcurso del
programa.
Es posible declarar varias constantes sucesivamente, puede ser una por renglón o varias en un solo renglón. Cuando se
hace esto, la palabra reservada CONST solo se pone una sola vez como cabecera y a continuación todas las constantes
por definir.

Ejemplo:

CONST
PI = 3.1415926;
Nombre = 'Juan Gutiérrez';
Unidad =1;
O
CONST PI = 3.1415926; Nombre = 'Juan Gutiérrez'; Unidad = 1;
Pero por cuestiones de legibilidad es preferible la primera opción.
La declaración de variables se lleva a cabo de la misma forma, solo que en lugar de la palabra CONST utilizamos la
palabra VAR seguida de un nombre de identificador, dos puntos ":" el tipo (una clase válida de datos) y punto y coma
";".
Ejemplo:
VAR
Numero: integer, Nombre:
string; Cod: char; Rut: string
[10];
TIPO DE DATOS
El manejo de la información en Turbo Pascal se realiza mediante diferentes clases de datos.

Integer Números Enteros


Char Caracteres
Real Números que pueden incluir una parte decimal
String Una secuencia de caracteres que se trata como uno solo

Tipo entero
En esta categoría pascal cuenta con 5 tipos diferentes, cada uno abarca un rango especifico de valores y utilizan una
diferente cantidad de memoria dependiendo de ese rango. Naturalmente el trabajar con rangos menores nos ofrece
2Ñinst El blog del Segundo Ñ – 2nninst.tk
una mayor velocidad y menor espacio de memoria, pero si se utilizan enteros largos se cuenta con mayor precisión. Los
tipos de enteros en pascal son los siguientes:

Tipo Valores que Acepta


Integer -32.768 a 32767
Word 0 a 65.535
Shortint -128 a127
Byte 0 a 255
Longint -2.147.483.648 a 2.147.483.647

Tipo reales
Los números reales son aquellos que cuentan con una parte decimal. En pascal se cuenta con varios tipos de datos
reales, pero no se pueden utilizar, más que el tipo Real, en máquinas que no cuente con un coprocesador matemático.
Los tipos de datos reales son:
Tipo Valores que Acepta
Real 2,9-39 a 1,738
Single 1,5-45 a 3,438
Double 5-324 a 1,7308
Extend 1,9-4851 a 1,14932
Comp -9,2-18 a 9,218

Los números de datos reales deben llevar por fuerza al menos un dígito de cada lado del punto decimal así sea éste un
cero.
Como por ejemplo, el número 5 debe representarse como: 5.0, el .5 como 0.5, etc.
En este tipo de datos se utiliza la notación científica, que es igual a la de las calculadoras, el dígito que se encuentra a
continuación de la E representa la potencia a la que se elevará el número 10 para multiplicarlo por la cantidad a la
izquierda de dicha E:
3.0E5 = 3.0 * 10A5 = 3.0 * 100000 = 300000 1.5E-4
= 1.5 * 10A-4 = 1.5 * 0.0001 = 0.00015

Tipo carácter
Los caracteres son cada uno de los símbolos que forman el código ASCII, el tipo estándar de Pascal para estos datos es
CHAR. Los caracteres se especifican entre apostrofes: 'a', ‘B’, '2', etc.
Tipo cadena
Las cadenas son secuencias de caracteres o arreglos que tienen una longitud máxima de 255 caracteres. Se definen
entre apostrofes. El tipo de Pascal para las cadenas es STRING.
El tamaño por defecto para un tipo string es de 255 caracteres, pero es posible definir uno menor indicando el tamaño
entre paréntesis cuadrado.
COMENTARIOS
Es posible introducir comentarios en el programa que sirvan únicamente para mejorar la comprensión del código fuente.
Un comentario no es tomado en cuenta al momento de la compilación del programa y es importante al. momento de
crearlo, modificarlo o mantenerlo.
Existen dos formas de colocar comentarios: entre laves: {comentario} o entre paréntesis y asteriscos
(*comentario*). PROGRAMA PRINCIPAL
Después de haber realizado todas las declaraciones se puede iniciar con el programa principal. El programa principal se
inicia con la palabra reservada BEGIN y termina con la palabra END., esta última con un punto al final.
Cada línea de código, enunciado, sentencia o instrucción completa que se escriba deberá terminar con un punto y
coma";". ASIGNACIÓN O IGUALACIÓN
La operación de asignación es una de las más utilizada ya que nos permite darle un valor determinado a las variables
que declaramos en el programa o lo que es lo mismo, igualarla a algún valor determinado.
2Ñinst El blog del Segundo Ñ – 2nninst.tk
El símbolo utilizado para la asignación es los dos puntos seguidos por el signo igual ":=", a la izquierda de dicho símbolo
se coloca el identificador al que se le asignará el valor y a la derecha se colocará un identificador o algún valor directo
que se asignará.
Ejemplo:
Valor := 126; { Valor almacena 126 }
A := 3 * 2; {A guardará el valor de la multiplicación de 3 por 2 }
Código := 'C; { Código almacenará la letra C }
SALIDA Y ENTRADA DE DATOS A LA PANTALLA
Es indispensable para todo programa que cuente con la capacidad de manejar entradas y salidas de información, ya que
sin estas capacidades sería un programa inútil.
SALIDA DE DATOS
Las instrucciones que permiten mostrar datos en la pantalla de la computadora son: WRITE Y WRITELN.
La sintaxis de los procedimientos es la siguiente:
WRITE (identificadores);
WRITELN (identificadores);
Donde los identificadores son aquellos que contienen la información que se desea mandar a la pantalla Es posible
utilizar varios de ellos por cada instrucción WRITE O WRITELN, únicamente separados por comas ",".
Ejemplo:
WRITE (Nombre, Apellido?, ApellidoM);
Esta línea de código desplegará consecutivamente los contenidos de los identificadores Nombre, ApellidoP y ApellidoM.
En caso de que la variable Nombre almacenara el valor Ruth, y la variable ApellidoP Parada y ApellidoM Stierling el
resultado en pantalla seria:
Ruth Parada Stierling
Podemos obtener el mismo resultado si utilizamos la siguiente estructura:
WRITE (Nombre);
WRITE (ApelidoP);
WRITE (ApelidoM);
Si en lugar de utilizar la instrucción WRITE hacemos uso de WRITELN con la misma sintaxis del ejemplo anterior:
WRITELN (Nombre);
WRITELN(ApellidoP);
WRITELN(ApellidoM);
Lo que obtendríamos sería: Ruth
Parada
Stierling
De este ejemplo podemos concluir que la diferencia entre las instrucciones WRITE Y WRITELN es que la última imprime
el contenido de los identificadores y cambia el cursor al siguiente renglón de la pantalla, y la primera escribe el
contenido y deja el cursor al final del dato escrito.

ENTRADA DE DATOS DESDE TECLADO


Las instrucciones estándar para obtener datos desde el teclado son: READ y READLN. La sintaxis de estas instrucciones
es muy parecida a la de WRITE Y WRITELN.
READ (identificador); READLN
(identificador);
El identificador puede ser cualquier variable definida previamente, No puede ser una constante. Puede ser también un
conjunto de variables separadas entre comas, en este caso se guardará e primer valor dado antes del enter en el primer
identificador proporcionado, luego el segundo y así sucesivamente hasta el último identificador.
La diferencia en el uso de la instrucción READ con respecto a READLN es que en la primera, si se le dan más datos de los
que se introducirán se guardan en un buffer y se usarán en la siguiente instrucción READ o READLN del programa, en
cambio READLN ignora todo dato posterior a los que estén definidos en la instrucción.
2Ñinst El blog del Segundo Ñ – 2nninst.tk
En caso de que se le indique a READ o READLN que lea un tipo específico de valor, y se le proporcione otro diferente se
generará un error y se detendrá la ejecución del programa.
Ejemplo:
PROGRAM primero; VAR
Entero: integer; BEGIN
Write ('Ingrese un numero');
{ despliega el mensaje en la pantalla }
Readln(Entero);
{ Lee un valor desde el teclado y lo almacena en la variable }
WritelnCEl valor ingresado es', Entero);
{ Escribe en la pantalla el mensaje y el contenido de la variable }
END.
PROCEDIMIENTOS REDEFINIDOS
CLRSCR;
Se utiliza para borrar la pantalla completa y sitúa en cursor en la esquina superior izquierda.
DELAY(TMP)
Detiene la ejecución del programa durante un tiempo especificado en TMP en milisegundos. El intervalo válido es de O a
65535, la precisión del retardo depende de la precisión del reloj interno de computadora.
READKEY
Lee un carácter desde el teclado, detiene la ejecución del programa hasta que no se presione una
tecla. GOTOXY(X,Y);
Posiciona el cursor en las coordenadas especificada por X e Y. El byte X representa la columna partiendo de izquierda a
derecha y el byte Y representa la fila partiendo de arriba hacia abajo.
OPERACIONES ARITMÉTICAS Operaciones
básicas
Las operaciones básicas están formadas por dos partes: el operador y los operandos. Un operador es el símbolo que le
indica al programa que operación realizará y los operandos son los datos sobre los cuales se efectuará la operación.
Los operadores son:
OPERADOR OPERACIÓN
+ Suma
- Resta
* Multiplicación
/ división
El tipo de datos que pascal regresa como resultado de una operación dependerá del tipo de datos usados como
operandos.
Operadores DIV y MOD
La división de dos números, sin importar su tipo, dará como resultado un número real, así que para dividir dos enteros, y
obtener el resultado como entero, Pascal ofrece el operador DIV, el cual da el resultado entero de una división entre
enteros, y el operador MOD que regresa el residuo de una división de enteros.
Ejemplo del uso de los operadores aritméticos:
PROGRAM operaciones_basicas; VAR
Suma, Resta, Multip, División: Real;
Cociente, Residuo: Integer, BEGIN
Suma := 12 + 8;
Resta := 12 - 8;
Multip := 12 * 8;
Divsion := 12 / 8
Cociente := 12 DIV 8; Residuo :=
12 MOD 8;
Writeln(‘La suma de 12 + 8 es igual a:', Suma);
Writeln('La resta de 12 + 8 es igual a:', Resta);
Writeln('La multiplicación de 12 + 8 es igual a:', Multip);
Writeln('La división de 12 + 8 es igual a:', División);
2Ñinst El blog del Segundo Ñ – 2nninst.tk
Writeln(‘La división entera de 12 + 8 es igual a:', Cociente);
Writeln(‘El residuo de la división entera de 12 + 8 es:', Residuo);
END.
Prioridad de operadores
Cuando se utilizan en alguna expresión más de un operador, éstos se evalúan conforme a una prioridad establecida por
Pascal. Es necesario conocer el orden de evaluación para evitar errores en nuestros programas.
El orden en que se ejecutan las *, /, DIV, MOD Primeros en evaluarse, todos tiene igual prioridad
operaciones es el siguiente: +, - Últimos en evaluarse, ambos tiene igual prioridad

En caso existir paréntesis en la expresión se evaluara primero el contenido de los paréntesis antes que otros
operadores.
Si existen dos operadores de igual prioridad se evaluará de izquierda a derecha.
Ejemplo de evaluación de los operadores:
PROGRAM Operadores;
VAR
Resultl, Result2: real; BEGIN
Resultl := 3 + 5 * 7;
Result2 := (3 + 5) * 7;
Writeln(‘El resultado de la operación 3 + 5 * 7 es:', Resultl);
Writeln('El resultado de la operación (3 + 5) * 7 es:',
Result2), END.
Como se podrá observar en la primera operación se ejecutará primero la operación 7 * 5 y al resultado se le sumarán 3,
en cambio, en la segunda operación se realizará primero la suma de 3 + 5 para multiplicarle al resultado 7.
OPERDORES RELACIONALES

Relacional Significado
= Igual a Lógico Significado
> Mayor que OR La expresión será cierta si cualquier operando es cierto
< Menor que AND La expresión será cierta si todos los operandos son ciertos
>= Mayor o igual que NOT Se utiliza como prefijo para negar un operando
<= Menor o igual que

BIFURCACIONES CONDICIONALES
Sentencia IF...THEN... ELSE
Esta expresión es utilizada para ejecutar una sentencia en el caso que una condición establecida sea verdadera, de lo
contrario se podrá ejecutar una sentencia distinta. Su sintaxis es:
IF condición THEN instrucción ELSE otro
Donde condición es la expresión que se evaluará, en caso de ser verdadera se ejecutará la sentencia dada como
instrucción, en caso de que la condición sea falsa se ejecutará la sentencia dada como otro.
Ejemplos:
1.- IF A>10 THEN
WRITELNCa mayor a 10);
2.- IF A>10 THEN
BEGIN
A := A * 8;
WRITELNCno mayor a 10');
WRITELNCpuede ser igual');
END;
3.- IF A>10 THEN
WRITELNCa mayor a 10);
2Ñinst El blog del Segundo Ñ – 2nninst.tk
ELSE
WRITELN('menor o igual a 10');
4.- IFA>10THEN
BEGIN
A := A * 8;
WRITELN('no mayor a 10');
WRITELN('nuevo valor', A);
END
ELSE
BEGIN
WRITELN('menor o igual a 10');
WRITELN(A);
END;

EJERCICIOS:
1. Leer dos números y determine cuál de ellos es menor o si son iguales
2. Leer tres números y determine cuál de ellos es menor. Supongamos que van a ser distintos.
3. Leer tres números y determinar cuál es el mayor teniendo en cuenta que se pueden dar igualdad entre ellos.
4. Leer un número y determinar si es mayor igual que 10 o no.
5. Leer un número y determinar si es positivo y par al mismo tiempo.
6. Leer un número y determinar si es divisible por 5.
7. Leer un número y determinar si este es positivo e impar.
8. Leer un número y determinar si este es mayor a 10 y menos a 86 y par al mismo tiempo.
9. Leer un número, si es positivo súmele 3, si es negativo súmele 6, luego indique si el resultado del calculo es positivo,
negativo o 0.
10. Leer un número y determinar si es divisible por 3 y por 2 al mismo tiempo.
11. Leer un número y determinar sí es divisible por 3 y por 2 al mismo tiempo pero sin usar conectores lógicos.
12. Lea un nombre y edad de 15 personas y muestre el nombre de la persona mayor.
13. Una empresa necesita contratar una secretaria. Para ello se le hacen las siguientes preguntas:
¿Es soltera (1) o casada (2)
¿Cuántos hijos tiene? Si no tiene indicar O
¿Tiene título técnico S/N?
¿Cuál es su edad?
Las postulantes debe cumplir los siguientes requisitos para ser preseleccionadas:
Las solteras deben poseer título técnico, no tener hijos y ser menor a 24 años. Las
casadas debe tener edad superior a 40 años y tener hijos.
El algoritmo que desarrolle debe permitir evaluar estas condiciones para determinar, mediante mensajes, si el
contrato se hace efectivo o no, por lo tanto, debe realizar los ingresos correspondientes y entregar el mensaje
respectivo.
No se sabe el numero de postulantes que se presentarán.

SENTENCIAS REPETITIVAS Ciclo FOR


Repite una o un grupo de sentencias un número determinado de veces. 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 o sentencias que
se quiere repetir. Su sintaxis es la siguiente:
FOR identíficador := inicio TO fío DO instrucción;
Donde el identíficador es la variable que se incrementará, inicio es el primer valor que tendrá dicha variable y fin es el
2Ñinst El blog del Segundo Ñ – 2nninst.tk
valor hasta el cual se incrementará la misma; instrucción es la sentencia o sentencias que se ejecutará en cada
incremento de la variable.
Ejemplo:
PROGRAM ciclo_for;
VAR
Numero: integer,
BEGIN
FOR Numero := 1 TO 50 DO
BEGIN
WRITELN(Numero);
END.
PROGRAM ciclo_forl;
USES crt;
VAR
numero, a, b: integer;
BEGIN
CLRSCR;
GOTOXY(3,3);WRITELN('ingrese numero');
GOTOXY(20,3);READLN(a);
CLRSCR;
FOR numero := 1 TO 5 DO
BEGIN
b := numero * a; GOTOXY(3,numero);
WRITELN(a,' * ',numero,' = ',b);
END;
END.
PROGRAM ciclo_for2;
USES crt;
VAR
numero, a, b: integer; resp: char;
BEGIN resp := 's';
WHILE resp = 's' DO
BEGIN
CLRSCR;
GOTOXY(3,3); WRITELN('ingrese numero1);
GOTOXY(20,3); READLN(a); CLRSCR;
FOR numero := 1 TO 12 DO
BEGIN
b := numero * a;
GOTOXY(3,numero); WRITELN(a,' * ',numero,' = ',b);
END;
GOTOXY(3,numero+2); WRITELN('desea otra s');
GOTOXY(14,numero+2); READLN(resp);
END;
END.

Ciclo 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 DO instrucción
Donde condición es la condición que se evaluará, mientras ésta sea verdadera se ejecutará la instrucción, que es una o
varias sentencias

Ejemplo:

PROGRAM Ciclo_WHILE;
VAR
Num: integer;
BEGIN
2Ñinst El blog del Segundo Ñ – 2nninst.tk
Num := 1;
WHILE Num <= 50 DO
BEGIN
GOTOXY(10,5); WRITELN(Nuni);
Num := Num + 1;
END;
END.

PROGRAM OTRO_ WHILE;


USES CRT;
VAR
NOM: STRING[15];
PU, PD, TOT1, STOT, IVA, TOTAL: DOUBLE;
CANT: INTEGER;
RE:CHAR;
BEGIN
CLRSCR;
GOTOXY(5,5); WRITELN(‘CONTINUA S/N’);
GOTOXY(23,5); READLN(RE);
WHILE (RE = 'S') OR (RE = 's') DO
BEGIN
CLRSCR;
GOTOXY(10,10); WRITELN('INGRESE PRECIO UNITARIO');
GOTOXY(40,10); READLN(PU);
GOTOXY(10,11); WRITELN('INGRESE CANTIDAD');
GOTOXY(40,11); READLN(CANT);
GOTOXY(10,12); WRITELN('INGRESE PORCENTAJE DESCUENTO');
GOTOXY(40,12); READLN(PD);
TOT1 := CANT * PU;
IVA :=TOT1* 0.18;
STOT :=TOT1+ IVA;
TOTAL := STOT - (STOT * PD)/100;
GOTOXY(10,15); WRITELN('TOTAL : ',TOT1:4:2);
GOTOXY(10,16); WRITELN(TVA : ',IVA:4:2);
GOTOXY(10,17); WRITELN('SUBTOTAL : ',STOT:4:2);
GOTOXY(10,18); WRITELN('A PAGAR : ',TOTAL:4:2);
GOTOXY(10,20); WRrrELN('CONTINUA S/N1);
GOTOXY(23,20); READLN(RE);
END;
END.

Ciclo REPEAT - UNTIL


Este tipo de ciclo es muy parecido al ciclo WHILE, la diferencia entre ambos es que en WHILE la condición se evalúa al
principio del ciclo, en cambio en REPEAT - UNTIL se evalúa al final, lo que significa que las sentencias se ejecutarán por lo
menos una vez, cosa que puede no ocurrir en el ciclo WHILE.

Ejemplo:
PROGRAM CICLOREPEAT;
USES CRT;
VAR
NUMERO: INTEGER;
BEGIN
NUMERO:=1;
REPEAT
WRITELN(NUMERO);
NUMERO := NUMERO + 1;
UNTIL NUMERO = 50;
END.

ARREGLOS UNIDIMENSIONALES (VECTORES)


2Ñinst El blog del Segundo Ñ – 2nninst.tk
Un arreglo es un área de memoria utilizado para contener datos relacionados entre sí, el arreglo se divide en elemento
que deben tener todos el mismo tipo de datos y la misma longitud.
Utilizando un arreglo, podremos introducir un conjunto de datos completo utilizando solamente un proposición de
lectura dentro de un ciclo. Una vez que el conjunto de datos se ha almacenado en memoria, podremos hacer referencia
a cualquiera de estos datos cuantas veces queramos sin que tengamos que volver a introducirlos de nuevo.
Declaración de arreglos:
Nombre : ARRAY [rango] OF tipo elemento
Nombre: nombre del arreglo
Rango: rango del índice
Tipo elemento : tipo de datos que contendrá

Para trabajar con los elementos de un arreglo, se debe utilizar un índice, este puede ser un número o una variable
numérica entera.
Ejemplo:
matriz :array[1..5] of string[10]; edad:
array[1..5] of integer;

Ejemplos:
PROGRAM MATRICES; USES CRT;
VAR
MATRIZ : ARRAY[1..5] OF INTEGER;
Y: INTEGER;
BEGIN
(* INGRESO DE DATOS A UN ARREGLO *) FORY:=1
TO5DO
BEGIN
WRITELN(’INGRESE UN NUMERO’);
READLN(MATRIZ[Y])
END;
(* DESPLIEGA DATOS DE UN ARREGLO *)
FORY:=1 TO5DO
BEGIN
WRITELN(‘NUMERO ‘,MATRIZ[Y], ' POSICIÓN ', ,Y);
DELAY(500);
END;
END.

PROGRAM CARACTERES;
USES CRT;
VAR
MATRIZ : ARRAY[1..5] OF STRING[10];
X, Y: INTEGER;
BEGIN
FORY-1 TOS DO
BEGIN
CLRSCR;
GOTOXY(5,5);WRITELN('INGRESE UN NOMBRE’);
GOTOXY(25,5);READLN(MATRIZ[Y])
END;
FORY.=1 TOS DO
BEGIN
WRITELN('NOMBRE ',MATRIZrY], 'POSICIÓN ',Y);
DELAY(1500);
END;
END.

2Ñinst El blog del Segundo Ñ – 2nninst.tk


PROGRAM CARACTERES:
USES CRT;
VAR
MATRIZ : ARRAY[1..5] OF STRING[10];
EDAD : ARRAY[1..5] OF INTEGER;
X, Y: INTEGER;
BEGIN
FORY:=1 TO5DO BEGIN
CLRSCR;
GOTOXY(5,5);WRITELN('INGRESE UN NOMBRE');
GOTOXY(25,5);READLN(MATRIZ[Y]);
GOTOXY(5,6);WRITELN('INGRESE UN EDAD');
GOTOXY(25,6);READLN(EDAD[Y])
END;
FORY:=1 TO5DO BEGIN
WRITELN('NOMBRE ',MATRIZ[Y], ‘EDAD’ ,EDAD[Y]); DELAY(1500);
END;
END.

ARREGLOS BIDIMENSIONALES (MATRICES)


Se define en forma similar a los unidimensionales, pero en estos se debe codificar dos rangos (uno para la fila y otro
para la columna).
Declaración de arreglos tridimensional:
Nombre : ARRAY[rangol, rango2] OF tipo elemento
Nombre: nombre del arreglo
Rango 1: rango del índice de fila
Rango2: rango del índice de columna
Tipo elemento : tipo de datos que contendrá
Ejemplo:
PROGRAM MATRICES;
USES CRT;
VAR
MATRIZ : ARRAY[1..5,1..5] OF INTEGER;
X, Y: INTEGER;
BEGIN
FOR X := 1 TO 5 DO BEGIN
FOR Y:=1 TO 5 DO BEGIN
WRITELN('INGRESE UN NUMERO');
READLN(MATRIZ[X,Y])
END;
END;
FORX:=1 TO 5 DO BEGIN
FORY:=1 TO 5 DO BEGIN
WRITELN(‘UN NUMERO ',MATRIZ[X,Y], ' POSICIÓN ', X,’ ‘,Y); DELAY(500);
END;
END;
END.

PROCEDIMIENTOS
Un procedimiento es una parte del programa (grupo de sentencias) que realiza una tarea específica En lugar de
reescribir el código completo de esa tarea cada vez que se necesite, únicamente se hace una referencia al nombre del
procedimiento.
Una vez creado un procedimiento actuará como una instrucción más de Pascal, y para ejecutarlo únicamente se dígita el
nombre de dicho procedimiento.
Para pode ejecutar un procedimiento es necesario declararlo en el programa que se este utilizando.
2Ñinst El blog del Segundo Ñ – 2nninst.tk
CREACIÓN DE PROCEDIMIENTOS
Se declaran después de haber declarado variables y constantes, antes del cuerpo del programa principal. La palabra
reservada para su declaración es Procedure seguida del nombre del procedimiento.
Sintaxis de un procedimiento:
Un procedimiento consta de :
Un encabezado de procedimiento
Una sección de declaraciones
Un cuerpo formado por:
la palabra reservada BEGIN
las sentencias del procedimiento
la palabra reservada END seguida de un punto y coma ( ; )

Ejemplo:
Procedure titulo;
Begin
Writeln(‘PROGRAMA DE PRUEBA');
End;
Uso de los procedimientos
Una vez declarado el procedimiento es posible utilizarlo como una instrucción de Pascal. Al uso del procedimiento se le
conoce como llamada al procedimiento.
El siguiente programa ilustra el uso o la llamada al procedimiento creado anteriormente:
PROGRAM PROCEO;
USES CRT;
PROCEDURE ÁSTER;
BEGIN
WRITELN(‘********************');
END;
PROCEDURE HOLA;
BEGIN
WRITELN('HOLAAAAAA');
END;
PROCEDURE CHAO;
BEGIN
WRITELN(‘CHAOOOOOOO');
END;
BEGIN
CLRSCR;
ÁSTER;
HOLA;
ÁSTER;
CHAO;
ÁSTER;
END.
En el se definen tres procedimientos: áster, hola y chao antes del cuerpo del programa, en el cuerpo del programa se
llaman a ejecución el cual al ejecutarse el programa desplegara:

HOLAAAAAA
********************
CHAOOOOOOO
********************

2Ñinst El blog del Segundo Ñ – 2nninst.tk

Вам также может понравиться