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.

Diagrama del funcionamiento de una subrutina.

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

 PROGRAMA principal
     instrucción 1
     instrucción 2
     ...
     instrucción N
     ...
     SUBRUTINA NombreX
        .......
     FIN SUBRUTINA
     ...
 FIN PROGRAMA principal.

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):

float Promedio(int A, int B){
   float r;
   r=(A+B)/2.0;
   return r;
}

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):

#include <stdio.h>

int DecirHola(void) {
    printf ("¡Hola, Mundo!");
    return 0;
}

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

Véase también

Este artículo ha sido escrito por Wikipedia. El texto está disponible bajo la licencia Creative Commons - Atribución - CompartirIgual. Pueden aplicarse cláusulas adicionales a los archivos multimedia.