Subrutina
# Subrutina

En informática, una subrutina o subprograma (también llamada procedimiento, función, rutina o método), como idea general, se presenta como un subalgoritmo que forma parte del algoritmo principal, el cual permite resolver una tarea específica. Algunos lenguajes de programación, como Visual Basic .NET o Fortran, utilizan el nombre función para referirse a subrutinas que devuelven un valor.

## Concepto de subrutina

Se le llama subrutina a un segmento de código separado del bloque principal, el cual puede ser invocado en cualquier momento desde esta u otra subrutina.

Una subrutina, al ser llamada dentro de un programa, hace que el código principal se detenga y se dirija a ejecutar el código de la subrutina.

## Elementos de la declaración de una subrutina

Las declaraciones de subrutinas generalmente son especificadas por:

* Un nombre único en el ámbito: nombre de la función con el que se identifica y se distingue de otras. No podrá haber otra función ni procedimiento con ese nombre (salvo sobrecarga o polimorfismo en programación orientada a objetos).
* Un tipo de dato de retorno: tipo de dato del valor que la subrutina devolverá al terminar su ejecución.
* Una lista de parámetros: especificación del conjunto de argumentos (pueden ser cero, uno o más) que la función debe recibir para realizar su tarea.
* El código u órdenes de procesamiento: conjunto de órdenes y sentencias que debe ejecutar la subrutina.

## Ejemplos

La siguiente función en C es la analogía al cálculo del promedio matemático. La función "Promedio" devuelve un valor decimal correspondiente a la semisuma de 2 valores enteros de entrada (A y B):

Así una llamada "Promedio(3, 5)" devolverá el valor de tipo real (float) 4,0.

También se pueden escribir funciones sin parámetros, por ejemplo (también en C):

Esta función, cuando sea ejecutada, imprimirá en la salida estándar el texto "¡Hola, Mundo!"

