Programación II
SUBPROGRAMAS
Los subprogramas son un conjunto de instrucciones que realizan una labor
específica y se comportan de manera independiente en un programa.
Los subprogramas facilitan:
• Descomponer la complejidad del problema
• Reutilización del código
• Mayor legibilidad
• Facilidad para añadir nueva funcionalidad
Los subprogramas pueden ser invocados varias veces desde diferentes partes del
programa.
El programa principal y los subprogramas se comunican mediante el paso de
parámetros u argumentos.
A nivel algorítmico los subprogramas se clasifican en funciones y procedimientos.
Funciones
Una función es un subprograma que puede recibir n parámetros y devuelve o
regresa un único valor.
Procedimientos
Un procedimiento es un subprograma que puede recibir n parámetros y devuelve o
regresa cero, uno o más valores.
En el lenguaje de programación Java los subprogramas (funciones y/o
procedimientos) se implementan por medio de los métodos.
METODOS EN JAVA
Un método en Java es un conjunto de instrucciones definidas dentro de una clase,
que realizan una determinada tarea y al que se puede llamar, para su ejecución,
desde el programa principal por medio de su nombre.
Ing. Sergio Meneses
Programación II
Cuando se llama a un método, la ejecución del programa se transfiere del programa
principal o subprograma llamador al método y cuando éste termina, la ejecución
continúa a partir del punto donde se produjo la llamada.
El uso de métodos permite:
• La construcción de programas modulares.
• La reutilización de código.
ESTRUCTURA GENERAL DE UN MÉTODO JAVA
La estructura general de un método Java es la siguiente:
[modificadores] tipoDevuelto nombreMetodo([parámetros]) [throws Excepciones]
Instrucciones;
[return valor;]
Los elementos que aparecen entre corchetes son opcionales.
modificadores(opcional): determinan el tipo de acceso al método.
tipoDevuelto: indica el tipo del valor que devuelve el método.
nombreMetodo: es el nombre que se le asigna al método.
Lista de parámetros (opcional): Son los datos de entrada que recibe el método para
operar con ellos, también se denominan argumentos y deben ir separados por
comas. Para cada argumento se debe especificar su tipo. Un método puede recibir
cero o más argumentos.
throws Excepciones (opcional): indica las excepciones que puede generar y
manejar el método.
return: se utiliza para devolver un valor. La palabra reservada return va seguida de
una expresión que será evaluada para saber el valor de retorno.
Se debe tener presente que el tipo de dato del valor que se está regresando o
devolviendo debe coincidir con el tipo de dato establecido en la definición del método
en el tipoDevuelto.
En caso que el método no regrese algún valor, el valor del tipo de dato que se debe
indicar en el tipoDevuelto de la declaración del método es void, y la instrucción
return es opcional.
Ing. Sergio Meneses
Programación II
Un método puede devolver un tipo primitivo, un array, un String o un objeto.
Un método tiene un único punto de inicio, representado por la llave de inicio { y su
ejecución termina cuando se llega a la llave final } o cuando se ejecuta la instrucción
return. La cual puede aparecer en cualquier lugar dentro del método y en este punto
termina la ejecución del mismo. Adicionalmente en un método pueden existir varias
instrucciones return.
IMPLEMENTACIÓN DE MÉTODOS EN JAVA
• Determinar los parámetros (entradas) que recibe el método.
• Determinar los tipos de datos de los parámetros.
• Determinar el tipo del valor que se regresa.
• Determinar el nombre del método.
• Escribir las instrucciones que forman el cuerpo del método.
Ejemplo: Elabore el algoritmo y programa java que realice lo siguiente: lea tres
números enteros y calcule e imprima el mayor de ellos.
En primer lugar se realizará el algoritmo sin usar subprogramas y posteriormente
usando subprogramas.
Algoritmo sin subprogramas
Inicio
Lea “Primer Número “, num1
Lea “Segundo Número “, num2
Lea “Tercer Número “, num3
m = num1
Si (num2 > m)
m = num2
Fsi
Si (num3 > m)
Ing. Sergio Meneses
Programación II
m = num3
Fsi
Escriba “El mayor número de la terna es “, m
Fin
Algoritmo con subprogramas
Inicio
Lea “Primer Número “, num1
Lea “Segundo Número “, num2
Lea “Tercer Número “, num3
m = mayor(num1, num2, num3)
Escriba “El mayor número de la terna es “, m
Fin
Funcion mayor (n1, n2, n3)
may = n1
Si (n2 > may)
may = n2
Fsi
Si (n3 > may)
may = n3
Fsi
Regrese may
Fin Funcion
Ing. Sergio Meneses
Programación II
La correspondencia de parámetros entre el programa principal y el subprograma es
posicional y los parámetros deben corresponder en número y tipo de dato.
Programa java
El modificador de acceso public indica que se puede acceder a este miembro de la
clase desde el exterior de la clase (Se puede acceder desde cualquier clase).
El modificador static indica que se trata de un método de clase (un método común
para todos los objetos de la clase).
Tipo Devuelto
Modificadores Parámetros
Nombre Método
Ing. Sergio Meneses