Diferencia entre revisiones de «Subrutina»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
Revertidos los cambios de 201.209.187.56 a la última edición de Biasoli usando monobook-suite
m Revertidos los cambios de Biasoli (disc.) a la última edición de Especiales
Línea 1: Línea 1:
En el ámbito de la [[programación]], un '''procedimiento''' es un tipo [[subalgoritmo]], es el término para describir una secuencia de órdenes que hacen una tarea específica de una [[Aplicación (informática)|aplicación]] más grande.
En [[computación]], una '''subrutina''' o '''subprograma''' (también llamada '''procedimiento''', '''función''' o '''rutina'''), 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]], utilizan el nombre función para referirse a subrutinas que devuelven un valor.


Las declaraciones de procedimientos generalmente son especificadas por:
Una subrutina al ser llamada dentro de un [[programa (computación)|programa]] hace que el código principal se detenga y se dirija a ejecutar el código de la subrutina, en cambio cuando se llama a una macro, el compilador toma el código de la macro y lo implanta donde fue llamado, aumentando así el código fuente y por consiguiente el objeto.
*'''Un nombre único en el [[ámbito (programación)|ámbito]]'''.- Nombre del procedimiento con el que se identifica y se distingue de otros. No podrá haber otro procedimiento ni [[Función (programación)|función]] con ese nombre (salvo [[sobrecarga]] o [[Polimorfismo (programación orientada a objetos)|polimorfismo]] en [[programación orientada a objetos]]).
*'''Una lista de [[argumento (Ciencias de la computación)|parámetros]]'''.- Especificación del conjunto de argumentos (pueden ser cero, uno o más) que el procedimiento debe recibir para realizar su tarea.
*'''El código u órdenes de procesamiento'''.- Conjunto de órdenes y sentencias que debe ejecutar el procedimiento.


La diferencia entre procedimientos y [[Función (programación)|funciones]] (el otro tipo de subalgoritmos) radica en que estos últimos devuelven un resultado.
== Elementos de la declaración de una subrutina ==
Las declaraciones de subrutinas generalmente son especificadas por:
* Un nombre único en el [[ámbito (programación)|ámbito]]: nombre de la función con el que se identifica y se distingue de otras. No podrá haber otra función ni [[Procedimiento (Programación)|procedimiento]] con ese nombre (salvo [[sobrecarga]] o [[polimorfismo (informática)|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 [[argumento (informática)|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.


Los procedimientos en programación generalmente son los que realizan operaciones de entrada/salida, en general, cualquier operación más o menos compleja que no requiera devolver un valor.
== Ejemplos ==
<pre>
PROGRAMA principal
instrucción 1
instrucción 2
...
instrucción N
...
SUBRUTINA NombreX
.......
FIN SUBRUTINA
...
FIN PROGRAMA principal.
</pre>


La siguiente función en [[lenguaje de programación C|C]] es la analogía al cálculo del promedio matemático. La función "Promedio" devuelve un valor decimal correspondiente a la suma de 2 valores enteros de entrada (A y B):
Ej: El siguiente procedimiento en [[Lenguaje de programación C|C]]<sup>(1)</sup> muestra un mensaje en pantalla indicando el resultado de calcular un promedio, índica cual es el valor decimal correspondiente a la suma de 2 valores enteros de entrada (A, B):


<pre>
<source lang="c">
float Promedio(int A, int B){
void Promedio(int A, int B){
float r;
float r;
r=(A+B)/2.0;
r=(A+B)/2.0;
printf("Promedio de %d y %d = %f",A,B,r);
return r;
}
}
</source>
</pre>


Así una llamada "Promedio(3, 5)" devolverá el valor de tipo real ([[float]]) 4,0.
Así una llamada a '''Promedio(3,5)''' da como resultado que se muestre en pantalla el mensaje '''Promedio de 3 y 5 = 4.0'''.


----
'''(1)''' En C, estrictamente hablando, todos los subalgoritmos son funciones, sólo que cuando se declaran de tipo '''''void''''' implica que no se ha de devolver ningún valor de retorno, por lo que en este caso la función se identifica conceptualmente con un procedimiento.
----


== Véase también ==
== Véase también ==
*[[Subalgoritmo]]
* [[Programación estructurada]]
*[[Función (programación)]]
* [[Programación modular]]
* [[Encapsulamiento (programación orientada a objetos)]]
* [[Abstracción (programación orientada a objetos)]]
* [[Recursión]]
* [[Algoritmo recursivo]]


[[Categoría:Programación]]
[[Categoría:Programación]]
[[Categoría:Partes de programas]]
[[Categoría:Partes de programas]]
[[Categoría:Algoritmos]]

[[bs:Podrutina]]
[[cs:Funkce (programování)]]
[[da:Funktion (programmering)]]
[[de:Funktion (Programmierung)]]
[[el:Διαδικασία (υπολογιστές)]]
[[en:Subroutine]]
[[et:Funktsioon (programmeerimine)]]
[[fa:رویه]]
[[fi:Aliohjelma]]
[[fr:Fonction informatique]]
[[he:פונקציה (תכנות)]]
[[hu:Függvény (programozás)]]
[[is:Undirforrit]]
[[it:Funzione (informatica)]]
[[ja:サブルーチン]]
[[ko:함수 (전산학)]]
[[nl:Subprogramma]]
[[pl:Podprogram]]
[[pt:Subrotina]]
[[ru:Функция (программирование)]]
[[sk:Podprogram]]
[[sr:Функција (програмирање)]]
[[sv:Funktion (programmering)]]
[[uk:Підпрограма]]
[[vi:Chương trình con]]
[[zh:子程序]]

Revisión del 20:07 25 ene 2010

En el ámbito de la programación, un procedimiento es un tipo subalgoritmo, es el término para describir una secuencia de órdenes que hacen una tarea específica de una aplicación más grande.

Las declaraciones de procedimientos generalmente son especificadas por:

  • Un nombre único en el ámbito.- Nombre del procedimiento con el que se identifica y se distingue de otros. No podrá haber otro procedimiento ni función con ese nombre (salvo sobrecarga o polimorfismo en programación orientada a objetos).
  • Una lista de parámetros.- Especificación del conjunto de argumentos (pueden ser cero, uno o más) que el procedimiento debe recibir para realizar su tarea.
  • El código u órdenes de procesamiento.- Conjunto de órdenes y sentencias que debe ejecutar el procedimiento.

La diferencia entre procedimientos y funciones (el otro tipo de subalgoritmos) radica en que estos últimos devuelven un resultado.

Los procedimientos en programación generalmente son los que realizan operaciones de entrada/salida, en general, cualquier operación más o menos compleja que no requiera devolver un valor.

Ej: El siguiente procedimiento en C(1) muestra un mensaje en pantalla indicando el resultado de calcular un promedio, índica cual es el valor decimal correspondiente a la suma de 2 valores enteros de entrada (A, B):

void Promedio(int A, int B){
   float r;
   r=(A+B)/2.0;
   printf("Promedio de %d y %d = %f",A,B,r);
}

Así una llamada a Promedio(3,5) da como resultado que se muestre en pantalla el mensaje Promedio de 3 y 5 = 4.0.



(1) En C, estrictamente hablando, todos los subalgoritmos son funciones, sólo que cuando se declaran de tipo void implica que no se ha de devolver ningún valor de retorno, por lo que en este caso la función se identifica conceptualmente con un procedimiento.


Véase también