Supongamos que necesitamos calcular la media aritmética de tres números enteros y que queremos resolver dicho cálculo mediante una función creada por nosotros.
Para resolver esto debemos:
1º) Indicar qué tipo de valor devuelve la función
2º) El nombre de la función
3º) Cuántos argumentos necesita la función y de qué tipo son.
Veamos cómo creamos nuestra función:
1º) El tipo de valor devuelto va a ser float (marcado en rojo), por eso escribimos float media
2º) El nombre de la función es media. La podemos llamar como queramos, siempre y cuando no coincida con alguna palabra reservada del lenguaje (como "else", "switch", "case") o algún nombre de otra función de la librería de Processing (como "pow", "random", "ellipse", etc).3º) Nuestra función media necesita 3 argumentos: x, y y z, los tres de tipo int (marcados en azul)
Ya sabemos cómo se llama nuestra función (media), lo que necesita (tres int) y lo que nos da (un float).
Entonces, entre las llaves "{" y "}" se escribe el código que resuelve lo que tiene que "hacer" la función. En nuestro caso, se almacena en la variable m el valor (x+y+z)/3 y DESPUÉS SE DEVUELVE (O RETORNA) EL VALOR CALCULADO. Para eso sirve la instrucción return.
¿Y a dónde se devuelve?
Pues el valor retornado se devuelve a la parte del programa principal que lo ha llamado o "invocado".
Veamos un ejemplo completo:
Vemos el programa completo y el resultado al introducir los números 6, 7 y 10.
Atención a la instrucción
m = (x+y+z)/3.0;
El divisor está escrito en forma decimal, para obligar a Processing a realizar la división con decimales. Si escribimos simplemente
m = (x+y+z)/3;
el 3 es un número entero, y (x+y+z) también es un entero: entonces el operador / realizaría la división entera, cosa que no queremos.
No hay comentarios:
Publicar un comentario