Funciones¶
Una función es un bloque de código que realiza una tarea específica.
Una función se ejecuta cuando esta es invoca (llamada).
Una ventaja que propone crear y usar una función es la división de problemas complejos en pequeños componentes que hacen el programa mas fácil de entender y programar.
Cuando estamos programando y tenemos líneas de códigos que se repiten o necesitamos de ciertos códigos en más de una ocasión, la mejor forma de gestionar nuestro código es, creando funciones.
Sintaxis de función¶
Las funciones se definen con la palabra clave de funcion o la forma corta fun, seguido por el nombre de la función y terminando con paréntesis().
Ejemplo de sintaxis
funcion nombre1()
#código
fin
fun nombre2()
#código
fin
Los nombres de funciones SI pueden:¶
- Los nombres de funciones pueden contener letras, dígitos, subrayados y signos de dólar.
- Empezar con un guión bajo _ o letras a-z o A-Z.
- Contener caracteres en mayúsculas y minúsculas. (Latino es sensible a las mayúsculas y minúsculas, por lo que los identificadores con nombres similares pero con letras mayúsculas o minúsculas en ellas serán interpretadas como diferentes funciones en Latino).
Los nombres de funciones NO pueden:¶
- No puede existir más de una función con el mismo nombre.
- No son validas las letras acentuadas u otros caracteres como la ñ.
- Empezar por un número.
- Empezar por un símbolo o alguna palabra reservada de Latino.
Nota
En otras palabras los nombres de funciones se rigen por las mismas normas que los nombres de las variables.
Múltiples parámetros¶
Una función puede recibir tantos parámetros como queramos.
Los paréntesis pueden incluir nombres de parámetros y estos parámetros están separados por una coma ( , ). Ejemplo: (parámetro1, parámetro2, parámetro3, etc…)
Al usar más de un parámetro, los valores enviados a la función tienen que estar en el mismo orden que los parámetros asignados en ésta.
funcion nombreFuncion (argumento1, argumento2)
resultado = argumento1 + argumento2
retornar resultado
fin
Invocar una función¶
Para ejecutar el código dentro de una función primero hay que invocarla (llamar a la función).
Para llamar una función se hace escribiendo el nombre de la función y en paréntesis los parámetros que esta tenga (en caso de que haya alguno).
funcion hola() //Aquí creamos una función con el nombre de hola()
escribir("Hola Mundo, Latino!") //Aquí especificamos lo que queremos que la función haga, en este caso sería un mensaje de "Hola Mundo, Latino!"
fin //Se concluye la función
hola() //aquí llamamos a la función a ser ejecutada y el código dentro de esta se ejecutara
Retornar función¶
El retornar los valores de una función nos ayuda a poder procesar de forma independiente valores enviados a esta sin interrumpir nuestro código.
Para que nuestra función pueda retornar valores es necesario que esta tenga sus parámetros asignados.
En Latino se puede regresar el valor de una función con las palabras claves regresar, retornar o la forma corta ret. La estructura de una función es la siguiente:
Palabras reservadas
regresar
retornar
ret
Ejemplo de código
funcion suma(a,b) //creamos una función de nombre suma() y con dos parámetros los cuales serán a y b
retornar a+b //asignamos el valor que deseamos devolver el cual será la suma de a+b
fin
resultado=suma(2,3) //creamos una variable llamada resultado y en ella asignamos el nombre de la función la cual es suma() y le asignamos valores a los parámetros
escribir(resultado) //El resultado será 5
Funciones como variables¶
Las funciones se pueden usar de la misma manera que las variables, en todos los tipos de fórmulas, asignaciones y cálculos.
/*En este ejemplo primero
crearemos una función la cual convertirá
el valor de fahrenheit a celsius
y posteriormente veremos cómo usar
directamente una función en vez de una variable*/
funcion convCelsius (fahrenheit)
retornar (5/9) * (fahrenheit-32)
fin
//Aquí usamos una variable
x = convCelsius(77)
escribir("La temperatura es de "..x.." celsius")
//Aquí usamos directamente la función
escribir("La temperatura es de "..convCelsius(77).." celsius")
Parámetros de funciones¶
Toda función tiene una entrada y una salida de datos.
Las salidas de datos se hacen cuando el código de la función se termina de ejecutar y también cuando usamos el comando retornar.
Para la entrada de datos en una función hacemos uso de los parámetros.
Los parámetros de una función son iguales que las variables con la diferencia que solo funcionan en la función en donde estén declaradas.
/*En este ejemplo creamos una función,
a esta le enviamos el valor colectado por el comando leer()
este valor es enviado a la función por medio de la variable usuario
y es recibida en la función gracias al parámetro nombre*/
funcion bienvenida(nombre)
escribir ("Bienvenido "..nombre)
fin
escribir("Hola como te llamas?")
usuario=leer()
bienvenida(usuario)