
Por ejemplo, es muy común que se quiera visualizar un título determinado varias veces en un programa, para evitar teclear ese título en nuestro programa fuente todas las veces que sea necesario creamos un procedimiento llamado "Titulo" que se encargará de escribirlo.
Una vez creado un procedimiento actuará como una instrucción más de Turbo Pascal, y para ejecutarlo unicamente teclearemos el nombre de dicho procedimiento.
Para poder ejecutar un procedimiento es necesario declararlo en el programa que se este utilizando.
|
PROCEDURE Titulo; BEGIN WriteLn ('Programa de Turbo Pascal'); END; |
El siguiente programa ilustra el uso o la llamada al procedimiento creado anteriormente:
|
PROGRAM Procedimientos; PROCEDURE Titulo; BEGIN WriteLn ('Programa de Turbo Pascal'); END; BEGIN WriteLn ('Programa ejemplo del uso de procedimientos'); Titulo; {Llama al procedimiento} WriteLn; Titulo; {Vuelve a llamar al procedimiento} END; |
|
PROGRAM Variables; VAR Hola : String; PROCEDURE prueba; VAR Adios : String; BEGIN {En esta sección si es posible usar la variable Hola} Adios := 'Adios, que les vaya bien'; WriteLn (Adios); END; BEGIN {En esta sección no se reconoce a la variable Adios} Hola := 'Hola, bienvenidos al programa'; WriteLn (Hola); WriteLn (Adios); {Al compilar el programa se generará un error ya que la variable Adios es inexistente en esta sección, para eliminar el problema quites esta linea} prueba; END. |
|
PROGRAM Variables_2; VAR Saludo : String; PROCEDURE Mensaje; VAR Saludo : String; BEGIN Saludo := 'Este mensaje solo es válido para el procedimiento "Mensaje"'; WriteLn('Saludo'); END; BEGIN Saludo := 'Primer saludo (Global)'; WriteLn (Saludo); Mensaje; WriteLn (Saludo); {Se escribirá el mensaje "Primer saludo"} END. |
Los parámetros son opcionales y si no se necesitan no se deben usar. Para utilizarlos es necesario declararlos son la siguiente sintaxis:
La lista de parámetros esta compuesta de los nombres de los mismos y del tipo de datos que representan, los del mismo tipo se separan con comas "," y cada tipo diferente se separa con punto y coma ";". Ejemplo:
Para llamar a un procedimiento que utiliza parámetros se pueden utilizar como tales otras variables o constantes, siempre y cuando sean del mismo tipo que los declarados. Ejemplo:
|
PROGRAM Parametros; VAR Saludo : String; PROCEDURE Imprime_5 (a : String); VAR Contador : Integer; BEGIN FOR contador := 1 to 5 DO {Imprime 5 veces la cadena almacenada } WriteLn(a); {en la variable "a", que es la información} END; {que llega como parámetro } BEGIN Saludo := 'Bienvenidos al programa'; Imprime_5 (Saludo); {llama al procedimiento Imprime_5, usando como} {parámetro la variable Saludo } Imprime_5 ('Fin'); {Utiliza la cadena "fin" como parámetro } END. |
A continuación se escribe el contenido de la función como una sentencia normal (sencilla o compuesta), normalmente terminando con la igualación de la función al valor que regresará. Ejemplo:
|
FUNCTION Promedio (a, b : Real) : Real;
{Promedio de dos números reales} BEGIN Promedio := (a + b) / 2; END; |
|
PROGRAM Funciones; VAR X, Y, Z : Real; FUNCTION Promedio (a, b : Real) : Real; {Promedio de dos números reales} BEGIN Promedio := (a + b) / 2; END; BEGIN X := 5.89; Y := 9.23; Z := Promedio (X, Y); {Iguala Z al valor devuelto por la función Promedio} WriteLn('El promedio de ',X,' y ',Y,' es: ',Z); END. |
El procedimiento EXIT provoca la salida del procedimiento que se está ejecutando y nos regresa al lugar de donde fue llamado.
o telcear:
El procedimiento DEC decrementa en 1 el valor de cualquier variable de tipo entero que se le indique, se usa igual que INC: