lunes, 10 de junio de 2013

SUBPROGRAMAS

SUBPROGRAMAS 


Mediante el uso de los subprogramas, es posible diseñar sistemas modulares en los cuales ya no existe un solo algoritmo que se encarga de todo, sino que tenemos diferentes algoritmos especializados por temas y que en conjunto forman el gran programa. 
Nuestro propio organismo esta dividido en subprogramas en los cuales cada parte tiene un fin específico e interactúan para mantener todo el sistema en pleno funcionamiento. 

Los sub-programas también se conocen con el nombre de subrutinas, módulos, operaciones o métodos. 
Debemos ver a los subprogramas como una estrategia para dividir un problema mayor en partes más pequeñas, de forma que al interactuar entre ellos el sistema se comporte tal y como se diseñó.

Cada subprograma es en realidad un algoritmo más pequeño que aporta parte de la solución al problema principal. En estos subprogramas podemos definir variables, realizar asignaciones, realizar lectura de datos, imprimir expresiones, variables y literales, usar ciclos, vectores, decisiones, incluso invocar o llamar  a otros subprogramas.







A Pesar de usar todos los subprogramas que se deseen siempre habrá de existir uno denominado principal, el cual es el encargado de organizar el uso de los elementos y subprogramas disponibles. Un programa siempre inicia en su parte principal y es desde allí de donde se articulan los elementos a ser usados.



 
Como funciona un programa que esta estructurado por subprogramas?

El programa inicia en su parte principal, es desde allí donde se ejecuta linea a linea, cuando el programa desea utilizar un subprograma, realiza un llamado,al cual se le conoce con el nombre de invocación. 

En este llamado,es vital conocer el nombre del subprograma que se desea invocar y los elementos que se deben enviar para que éste funcione adecuadamente, el programa ejecuta cada instrucción del subprograma que fue llamado, y cuando termina, regresa retornando el resultado y permitiendo que el programa siga la ejecución en la parte donde había sido llamado.








Los subprogramas tienen dos aspectos claves.

1. Un subprograma se crea una sola vez.
Esto implica hacer el algoritmo que se encuentra en el interior del subprograma de forma que cumpla un fin específico.

2. Un subprograma se usa n veces en un subprograma
Desde cualquier parte del programa se puede llamar a un subprograma creado con el fin de ser usado, solo se necesita enviar los parámetros necesarios para su correcto funcionamiento.

Forma general para definir un subprograma en el lenguaje python.





Para utilizar un subprograma se aplica la misma técnica que trabajamos para las funciones definidas por el sistema.



Para construir un subprograma se necesita:

1. Asignarle un nombre que sea acorde a lo que se espera realice el subprograma
2. Definir el número de parámetros que se necesitarán para su funcionamiento. En este punto la idea es que en un comienzo desde el enunciado se sugiera el número de parámetros que necesitará el subprograma y que más adelante se desarrolle esa habilidad.
3. Crear el algoritmo que se encuentra en el interior del subprograma. Utilizando los parámetros como datos de entrada y aplicando cualquiera de las instrucciones que se venían  aplicando en los algoritmos realizados hasta ahora.
4. Si el programa debe retornar un resultado, este se logra mediante el uso de la instrucción return seguida de lo que se desea retornar. 

Forma general de un programa construido con subprogramas.






1. ¿Para crear un programa con subprogramas siempre hay que importar las bibliotecas?
No. Eso solo depende si se necesitan funciones definidas por el sistema en lo que deseamos construir.


2. ¿Dos subprogramas pueden llamarse igual?
No. Cada subprograma debe tener un único nombre que lo identifique de los demás.


3. ¿Los parámetros pueden llamarse igual?
En un mismo subprograma cada parámetro debe ser diferente de los otros, cada parámetro se separa de los demás por el uso de comas. Pero dos subprogramas si pueden tener el mismo nombre de los parámetros, dado que cada uno es independiente de los demás.


4. ¿Qué instrucciones pueden ir dentro de un subprograma?
Todas las que se han trabajo.
- Definición de variables
- Realización de operaciones lógicas, matemáticas...
- Toma de decisiones if, else, elif ...
- Realización de ciclos, simples y anidados.
- Aplicación de vectores 
- Utilización de funciones definidas por el sistema
- Utilización de subprogramas.


5.¿Puede ejecutarse un subprograma solo?
No. Todo subprograma debe ser llamado desde otra parte del programa y ningún subprograma se ejecutará sin que exista un programa principal que desencadene su utilización.


6. ¿Cuántas veces puedo utilizar un subprograma?
Un subprograma puede ser utilizado las veces que se desee, no hay limites. Pero si se aplica una llamada recursiva, es decir, un programa que se llama a si mismo n veces puede saturar la memoria del computador y bloquear el programa que se esta ejecutando.


7. ¿Que pasa cuando en dos subprogramas se definen variables con el mismo nombre?
Al estar en subprogramas diferentes, no les sucede nada, dado que cada subprograma genera una capsula que la convierte en independiente de los demás e incluso independiente del programa principal.







No hay comentarios:

Publicar un comentario