5.3 Subalgoritmo función 103 Un subalgoritmo función es un subalgoritmo que recibiendo o no datos devuelve un único resultado. Una función es un conjunto de acciones (una o varias) con un nombre, un tipo de dato y un resultado único. 5.3.1 Sintaxis de la declaración de funciones función <nombre de la función>(<lista de parámetros>): <Tipo de resultado> <declaración de variables> Inicio Cuerpo <acciones> Devolver (<constante, variable o expresión>) fin función Nombre de función : el nombre de una función sigue la misma regla de los nombres de variables, es decir, debe ser un identificador válido. Tipo de resultado : señala el tipo de dato de la información que devuelve la función. Lista de parámetros : contiene las variables que pasan información necesaria para que la función ejecute el conjunto de acciones. Cada variable de la lista debe tener una declaración de tipo dentro del paréntesis. Puede que no hayalista de parámetros, en dicho caso se escribe el paréntesis vacío. Declaración de variables : en este lugar se deben declarar aquellas variables que se usarán en la función, salvo las que están declaradas en la lista de parámetros. Estas variables son llamadas locales dado que su alcance se restringe a la función. Cuando se abandona la función dichas variables no pueden ser accedidas. Cuerpo de la función : lo constituye el conjuntode acciones a realizar por la función. Retornar el resultado : el único resultado que devuelve la función puede ser un valor constante, o una variable o una expresión válida, la cual debe colocarse entre paréntesis al lado de la acción Devolver. Cuando se ejecuta esta acción se devuelve el control del programa al lugar donde se ha llamado a la función. Ejemplos de subalgoritmos función A continuación veremos algunos ejemplos de funciones y su utilización. Ejemplo 1 : Definir la funcióny =x donde el exponente n es de tipo entero El pseudocódigo de resolución de esta función es el siguiente: función potencia ( x:real , n:entero ):real variables entero i real y inicio y 1 Repetir para i1 hasta abs(n) hacer y y*x finpara si n < 0 entonces