Miguelven’s Weblog

April 21, 2009

Procedimientos y Funciones

Filed under: Cibernética — miguelven @ 5:13 pm

Procedimientos y Funciones

Los procedimientos y funciones son la base principal en la programación modular, estudiaremos aqui su funcionamiento y su sintaxis.

Procedimientos

Un procedimiento es un subprograma que realiza una tarea especifica. Puede recibir cero o mas valores del programa que llama y devolver cero o mas valores a dicho programa.

Un procedimiento esta compuesto de un grupo de sentencias a las que se asigna un nombre (identificador) y constituye una unidad de programa. La tarea determinada al procedimiento se ejecuta siempre que se encuentra el nombre del procedimiento.

La declaración indica las instrucciones a ejecutar. Su sintaxis es:

procedimiento nombreproc (lista de par)
declaraciones locales
inicio
cuerpo del procedimiento (instrucciones)
fin.

Un procedimiento es llamado en un programa o dentro de otro procedimiento directamente por su nombre en cualquiera de las dos formas:
nombreproc
nombreproc (lista par. actuales)

Funciones

Una función es un subprograma que recibe como argumentos o parametros, datos de tipos numerico o no numerico, y devulve un único resultado. Esta característica le diferencia escencialmente de un procedimiento.

Su formato es el siguiente:

funcion nombrefuncion (p1,p2,…) : tipo a devolver
declaraciones locales
inicio
cuerpo de la función
nombrefuncion <- valor a devolver
fin

Una función es llamada por medio de su nombre, en una sentencia de asignación o en una sentencia de salida.

Sintaxis:

Declaración y programación (escritura) de un procedimiento:

  PROCEDIMIENTO nombre ([{VAR,SALIDA,CONST}]NombreParametro1:tipo[,...]);
  INICIO
    código
  FIN;

Declaración y programación de una función:

  FUNCION nombre ([{VAR,SALIDA,CONST}]NombreParametro1:tipo[,...]):tipo devuelto;
  INICIO
    código
    {RESULTADO,nombre} := valor;
    código
  FIN;

Ejemplo:

FUNCION Doble(numero: real): real;

INICIO

RESULTADO := numero * 2;

FIN;

VAR

A: real;

B: real;

INICIO

A := Doble(B);

FIN.

Advertisement

Leave a Comment »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Theme: Banana Smoothie. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.