Ir al contenido principal

Comenzando a programar: Funciones

Programación: Funciones

Hola, futuros programadores. Ya hemos visto que es una función y hemos trabajo con ellas. Con la función main. Las funciones tienen un nombre, pueden tener -o no- unos valores de entrada y uno -o ningún- valor de salida. Así dicho puede sonar muy genérico o abstracto, pero veremos que es muy sencillo.

Las funciones, al igual que las variables, es necesario declararlas para posteriormente utilizarlas. En su declaración se especifica el tipo de variable que va a retornar al finalizar su ejecución -o void si no retornará valor alguno-, el nombre de dicha función, una serie de variables de entrada (con tipo de variable y nombre que va a tener dentro de la función para referirse a ella) y el código a ejecutar.

En el caso de C y de muchos otros lenguajes la sintaxis es similar a la siguiente:


int suma(int var1, int var2){
    return var1 + var2;
}

Es una función muy simple. Se llama suma, va a retornar un valor int, sus valores de entrada son las variables var1 y var2 y el código de la función únicamente calcula la suma de las dos variables y devuelve su valor.

Las funciones son elementos muy útiles ya que nos van a permitir reducir la repetición de código. Además, van a hacer mucho más fácil leer y entender el código.

Son elementos muy versátiles. Desde una función se puede llamar a otras -lanzar su ejecución-, que a su vez llamen a otras, y cuando terminen -alcancen la instrucción return- volverán al punto en el que habían sido llamadas, siempre por orden. Además, el valor que devuelve una función puede ser almacenado en variables para después poder utilizarlos. Veamos un ejemplo simple:


#include <stdio.h>
int suma(int var1, int var2){

     return var1+var2;
}
int main(){
    int x = 6;
    int y = 3;
    int resultado = suma(x,y);
    printf("La suma de x e y es %i\n",
resultado);
    return 0;
}


Como se puede ver, en lugar de calcular la suma de x e y se está llamando en ese punto a la función suma, que realiza la operación, devuelve el valor y se almacena en la variable resultado. Es importante tener en cuenta que los parámetros que se le pasan a las funciones deben ir por orden y siempre separados por coma. En este caso como se le pasa x,y los valores dentro de la función suma serán var1=6 y var2=3. En C es necesario que la declaración de funciones se haga en un orden concreto. Es decir, siempre es necesario declararlas antes de donde se vayan a utilizar. Por eso la función suma está declarada antes que la función main.

En este mismo ejemplo ya podemos ver el caso de una función en la que en su código se haga una llamada a otra función. No podemos olvidarnos de que el main, después de todo, sigue siendo una función.

En los ejercicios de hoy vamos a tratar varios tipos de funciones, así como cómo relacionarlas entre ellas.

Ejercicios

Como ya sabéis, con todos los ejemplos os voy a dejar unos ejercicios para que practiquéis por vuestra cuenta.

Ejercicios aquí.
Soluciones aquí.

Cualquier duda que tengáis con lo que se ha explicado aquí o con los ejercicios no dudéis en dejarnos un mensaje.

Continuar...


Comentarios

Entradas populares de este blog

¿Por qué programar?

Hola, futuro programador. Supongo que te estás preguntando para qué puede ser útil para ti saber programar. Espero poder responderte a eso con unos pequeños ejemplos y experiencias para las que, para mi, me ha sido muy provechoso. Lo primero es tener claro qué es la programación. Para ello podemos guiarnos por definiciones bastante formales pero realmente programar simplemente es resolver un problema concreto mediante la automatización de tareas. Aún así, esta definición puede sonar bastante abstracta, pero os pondré un pequeño ejemplo: la alarma que nos despierta todos los días. Puede parecer un elemento poco importante, pero todos sabemos que no lo es. El problema que trata de resolver está claro, despertarnos. ¿Y cómo lo consigue?. La respuesta es simple, automatizando una tarea: comprobar la hora y, si coincide, hacer sonar la alarma. Os voy a poner un ejemplo -un tanto curioso, por seros sinceros- en el que saber programar me ha sido extremadamente útil. Se basa en un pr...

Nuestro primer programa

Hola, futuros programadores. Es el momento de programar nuestra primera aplicación. Hay multitud de lenguajes en la actualidad pero para comenzar utilizaremos el famoso C -lenguaje en el que se ha escrito gran parte de los sistemas operativos modernos, como Linux, Windows o MacOS-. Pese a ser un lenguaje muy engorroso, para nuestros primeros pasos es la mejor opción. Vamos a empezar haciendo un simple programa de Hello World! . Este es el programa por excelencia en cualquier lenguaje. Es el más simple que se puede crear, simplemente genera el mensaje "Hello World!" por algún modo de visualización. En estos primeros pasos no vamos a utilizar interfaces gráficas, por lo que de lo único que disponemos es de nuestro viejo amigo el terminal -sí, esa pantalla negra con letras por todos lados que suele asociarse con los hackers-.  Para empezar a programar necesitamos un entorno de desarrollo. Por el momento os recomiendo utilizar alguna herramienta online como esta , aunque...