Diferencia entre revisiones de «Subrutina»
Revertidos los cambios de 201.209.187.56 a la última edición de Biasoli usando monobook-suite |
|||
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. |
|||
⚫ | |||
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]]). |
||
⚫ | |||
⚫ | |||
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 == |
|||
⚫ | |||
⚫ | * |
||
* Un tipo de dato de retorno: [[tipo de dato]] del valor que la subrutina devolverá al terminar su ejecución. |
|||
⚫ | |||
⚫ | |||
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 == |
|||
⚫ | |||
PROGRAMA principal |
|||
instrucción 1 |
|||
instrucción 2 |
|||
... |
|||
instrucción N |
|||
... |
|||
SUBRUTINA NombreX |
|||
....... |
|||
FIN SUBRUTINA |
|||
... |
|||
FIN PROGRAMA principal. |
|||
</pre> |
|||
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): |
|||
⚫ | |||
<source lang="c"> |
|||
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; |
|||
} |
} |
||
</ |
</pre> |
||
Así una llamada |
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.