Está en la página 1de 24

Facultad de Ingeniera Mecatrnica

Algoritmo y Estructura de Datos


Tema: Sub-Programas

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Objetivos

Facultad de Ingeniera Mecatrnica

SubProgramas
Crear Interfaz Debug and Deploy

Escribir Cdigo

Introduccin Definicin

Programacin

Procedimientos y Funciones
Definicin Sintaxis

Acceso a datos

Depurar e implantar

Ejercicios prcticos

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

SubProgramas

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Sub-Programas
La programacin estructurada permite la escritura de programas fciles de leer y modificar. En esta programacin, el flujo lgico se gobierna por las estructuras de control bsicas vista hasta hoy: secuenciales, repetitivas y de seleccin.

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Sub-Programas
Permiten descomponer un problema en un conjunto de problemas independientes entre s, ms sencillos de resolver y que pueden ser tratados separadamente unos de otros. Se pueden probar los subprogramas de manera independiente, depurndose sus errores antes de su inclusin en el programa principal y almacenarse para su posterior utilizacin cuantas veces se precise.
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Ventajas de los Sub-programas


Independientes, el desarrollo de un programa se puede efectuar con mayor facilidad. Se podr modificar un mdulo sin afectar a los dems. Los subprogramas slo se escribirn una vez, aunque se necesiten en distintas ocasiones a lo largo del algoritmo. Permite buscar los errores en un programa ya que stos se pueden aislar fcilmente.
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Tiempo de Vida de las Variables


Globales: las variables permanecen activas durante todo el programa. Se utilizan en cualquier procedimiento o funcin. Locales: las variables son creadas dentro de una funcin o procedimiento. Al finalizar la funcin o el procedimiento, desaparecen de la memoria. Dos variables locales pueden tener el mismo nombre siempre que estn declaradas en funciones o procedimientos diferentes.
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Procedimientos y Funciones

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Procedimientos
Son subprogramas que forman parte de un programa y realizan una tarea especfica. Un procedimiento puede tener sus propias variables que se declaran en la seccin variables del propio procedimiento. Estas se llaman variables locales. As, las variables locales para un procedimiento slo se pueden usar en el cuerpo del procedimiento y no en el cuerpo principal del programa.
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Procedimientos
Para llamar a un procedimiento se hace uso del nombre del mismo, opcionalmente se puede pasar valores si es que el procedimiento implementa parmetros. El paso de valores a los parmetros de un procedimiento se puede hacer por valor y/o referencia.

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Procedimientos
Parmetros
Es un tipo especial de variables en un procedimiento a los que se pueden pasar valores desde el exterior del procedimiento. Se declaran en la cabecera del procedimiento. Los parmetros se clasifican en: 1. Por Valor 2. Por Referencia

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Procedimientos
Parmetros por Valor
Son los parmetros que pueden recibir valores pero que no pueden devolverlos. Es una variable global que se conecta con una variable local mediante el envo de su valor, despus de lo cual ya no hay relacin. Lo que le sucede a la variable local no afectar a la global.
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Procedimientos
Parmetros por Referencia
Son los que pueden recibir y devolver valores. Son variables globales que se conectan con una local a travs de su contenido; al establecerse dicha conexin las variables se convierten en sinnimos, lo que afecte a la variable local le suceder a la variable global.

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Procedimientos
Sintaxis :
Opcional

PROCEDIMIENTO Nombre(Lista_Parametros) VAR : <variables_locales> INICIO Instrucciones : y/o : Sentencias FIN-PROCEDIMIENTO


Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Procedimientos
ALGORITMO Ejemplo1 VARIABLES ENTERO N PROCEDIMIENTO Imprime(CADENA Texto, ENTERO Numero) VARIABLES ENTERO I INICIO mbito Local PARA I 1 HASTA Numero ESCRIBIR( Texto ) FIN-PARA FIN-PROCEDIMIENTO INICIO LEER( N ) Imprime(HOLA, N) Imprime(CETIS, 20) Imprime(UTP, 50) FIN
Algoritmo y Estructura de Datos

Facultad de Ingeniera Mecatrnica

Ejemplo 1: Implementar un procedimiento que permita visualizar un texto un nmero determinado de veces.
mbito Global

Lista de Parmetros

Ing. Ral Jimenez Drago

Procedimientos

Facultad de Ingeniera Mecatrnica

Ejemplo 2 : Implemente un procedimiento que permita visualizar la suma de 2 nmeros enteros.


ALGORITMO Ejemplo2 VARIABLES ENTERO A, B PROCEDIMIENTO SUMA( ENTERO M, ENTERO N) INICIO ESCRIBIR( M + N ) FIN-PROCEDIMIENTO INICIO LEER( A, B ) SUMA( A, B ) SUMA( A, 10) FIN

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Procedimientos

Facultad de Ingeniera Mecatrnica

Ejemplo 3: Implementar un procedimiento que imprima el mayor valor de 2 nmeros enteros.


ALGORITMO Ejemplo3 VARIABLES ENTERO A, B PROCEDIMIENTO ImprimeMayor( ENTERO M, ENTERO N) INICIO SI( M > N )ENTONCES ESCRIBIR( M ) SINO ESCRIBIR( N ) FIN-SI FIN-PROCEDIMIENTO INICIO LEER( A, B ) ImprimeMayor( A, B) FIN
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Procedimientos

Facultad de Ingeniera Mecatrnica

Ejemplo 4: Implementar un procedimiento que visualice los divisores de un nmero entero.


ALGORITMO Ejemplo4 VARIABLES ENTERO M PROCEDIMIENTO ImprimeDivisores(ENTERO N) VARIABLES ENTERO I INICIO PARA I 1 HASTA N SI ( N MOD I = 0 ) ENTONCES ESCRIBIR( I ) FIN-SI FIN-PARA FIN-PROCEDIMIENTO INICIO LEER( M ) ImprimeDivisores( M ) FIN
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Procedimientos
ALGORITMO Ejemplo5 VARIABLES ENTERO Numero PROCEDIMIENTO Descomponer(ENTERO N) VARIABLES ENTERO Cifra INICIO MIENTRAS N <> 0 HACER Cifra N MOD 10 ESCRIBIR (Cifra) N N\10 FIN-MIENTRAS FIN-PROCEDIMIENTO INICIO LEER( Numero ) Descomponer(Numero) FIN
Algoritmo y Estructura de Datos

Facultad de Ingeniera Mecatrnica

Ejemplo 5: Defina un sub-programa que reciba como parmetro un numero de 2 cifras y que liste las cifras del mismo.

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Funciones
Son subprogramas que forman parte de un programa y realizan una tarea especfica, a diferencia del procedimiento, debe retornar un resultado. Una funcin puede tener sus propias variables que se declaran en la seccin variables de la propia funcin. Estas se llaman variables locales. As, las variables locales tienen la misma funcionalidad de un procedimiento slo se pueden usar en el cuerpo de la funcin y no en el cuerpo principal del programa.
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

Funciones
Sintaxis :
Opcional

FUNCION Nombre(Lista_Parametros): Tipo de Dato VAR : <variables_locales> INICIO Instrucciones : y/o : Sentencias FIN-FUNCION
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Funcin

Facultad de Ingeniera Mecatrnica

Ejemplo 1 : Implemente una funcin que permita retornar la suma de 2 nmeros enteros.
ALGORITMO Ejemplo1 VARIABLES ENTERO A, B FUNCION SUMA( ENTERO M, ENTERO N) : ENTERO INICIO RETORNAR( M + N ) FIN-PROCEDIMIENTO INICIO LEER( A, B ) ESCRIBIR SUMA( A, B ) ESCRIBIR SUMA( A, 10) FIN

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Funcin

Facultad de Ingeniera Mecatrnica

Ejemplo 2: Implementar una funcin que imprima el mayor valor de 2 nmeros enteros.
ALGORITMO Ejemplo3 VARIABLES ENTERO A, B FUNCION ImprimeMayor( ENTERO M, ENTERO N):ENTERO INICIO SI( M > N )ENTONCES RETORNAR( M ) SINO RETORNAR( N ) FIN-SI FIN-FUNCION INICIO LEER( A, B ) X ImprimeMayor( A, B) escribir X FIN
Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago

Facultad de Ingeniera Mecatrnica

ACTIVIDAD PROPUESTA
1.Mediante procedimiento, realice un programa donde ingrese un numero y visualice el numero invertido. 2.Mediante funcin, realice un programa donde ingrese cinco (05) nmeros y retorne su factorial.

Algoritmo y Estructura de Datos

Ing. Ral Jimenez Drago