Clasificación de los módulos
Pueden ser de dos tipos: Funciones y Procedimientos.
Estas funciones y procedimientos se escriben solamente una vez, pero pueden ser referenciados (invocadas) en diferentes puntos de un programa, tantas veces como se requiera de modo que se puede evitar la duplicación innecesaria del código.
Funciones
Las funciones son bloques de instrucciones que tienen por objeto el alcanzar un resultado que sustituirá a la función en el punto de invocación (las funciones devuelven un resultado).
Cada función se evoca utilizando su nombre en una expresión con los argumentos actuales o reales encerrados entre paréntesis.
Para hacer una referencia a una función se invoca mediante un nombre y en caso de existir, una lista de parámetros actuales necesarios (argumentos). Los argumentos deben coincidir en cantidad, tipo y orden con los de la función que fue definida. La función devuelve un valor único.
Las funciones a que se hace referencia, se conocen como funciones de usuario puesto que son definidas por él mismo y permiten su uso en forma idéntica a las funciones estándares. Para coordinar e iniciar el procesamiento, se utiliza un módulo principal que es colocado al final del algoritmo.
Declaración de funciones
función nombre_función (par1, par2,par3,…) : tipo_del_resultado
Inicio
acción1
acción2
:
nombre_función = Resultado_Obtenido
Fin
Donde:
par1,par2 …. Lista de parámetros formales o argumentos.
nombre_función Nombre asociado de la función, que será un nombre de identificador válido.
acción1, acción2,.. Instrucciones que constituyen la definición de las función, y que debe contener una acción sola de asignación que asigne un valor al nombre de la función.
Ejemplo:
Obtener el sexto carácter de un nombre y si dicho carácter no existe, se asumirá un asterisco como tal.
Función SEXTO(n:string):carácter
Inicio
si longitud(n) >= 6 entonces
SEXTO = Subcadena(n,6,1)
en caso contrario
SEXTO = ‘*’
Fin