ALGORITMO CON FUNCIONES Y PROCEDIMIENTOS
Download
Report
Transcript ALGORITMO CON FUNCIONES Y PROCEDIMIENTOS
Instructora:
Consuelo Rondon Tamayo
http://consuelorondon.blogspot.com
TEMAS
INTRODUCCION
DEFINICION DE FUNCION
DECLARACION DE FUNCION
LLAMADO DE UNA FUNCION
EJEMPLOS DE FUNCIONES
PROCEDIMIENTOS
DEFINICION DE PROCEDIMIENTOS
DECLARACION DE PROCEDIMIENTOS
INTRODUCCION
La solucion de problemas se puede resolver utilizando
subprogramas o subalgoritmos en este caso tenenos
como subalgoritmos LAS FUNCIONES Y LOS
PROCEDIMIENTOS, asi podemos verificar mas
facilmente los errores y ademas los programas son mas
faciles de comprender.Esta tecnica de dividir el
programa en subprogramas es llamado "DIVIDE Y
VENCERAS“. En resumen una función es el término
para describir una secuencia de órdenes que hacen una
tarea específica de una aplicación más grande.
DEFINICION D FUNCIONES
Matematicamente son consideradas como operaciones
que toman uno o mas valores llamados
ARGUMENTOS y devuelven un valor denominado
RESULTADO. En todos los lenguajes de programacion
se incorporan FUNCIONES. un ejemplo de una
funcion matematica es f = x /1+x, donde f es la funcion
y x el argumento
COMO SE DECLARA UNA FUNCION
Definición de funciones
La declaración de una función requiere una serie de pasos que la definen. Una función como tal subalgoritmo o subprograma
tiene una constitución similar a los algoritmos, por consiguiente, constará de una cabecera que comenzará con el tipo del valor
devuelto por la función, seguido dela palabra function y del nombre y argumento de dicha función. A continuación irá el cuerpo
de la función, que será una serie de acciones o instrucciones cuya ejecución hará que se asigne un valor al nombre de la función.
Esto determina el valor particular del resultado que ha de devolverse al programa llamador.
<tipo de resultado> FUNCION<nombre_funcion> (lista de parametros)
declaraciones locales
inicio
<acciones>
devolver (<expresion>)
Fin función
Supongamos que queremos calcular el valor total de un pedido a partir de la simple suma de los precios de cada uno de los artículos.
Podríamos definir una función suma en nuestro lenguaje ficticio:
Entero funcion suma(art1,art2,art3)
entero art1, art2,art3
inicion
suma=art1+art2+art3
devolver (suma)
fin funcion
Llamado de una funcion
Una fjuncion puede ser llamada de la siguiente forma:
nombre_funcion (lista de parametros)
EJEMPLOS
PROCEDIMIENTOS
Las funciones son muy útiles como herramientas de
programación, pero tienen una seria limitación: sólo
pueden devolver un resultado al algoritmo que las
invoca. Y en muchas ocasiones es necesario devolver
más de un resultado.
Para eso existen los procedimientos, también llamados
subrutinas, que son, en esencia, iguales a las
funciones.
DECLARACION DE PROCEDIMIENTOS
Los procedimientos son, por lo tanto, módulos más generales que las
funciones. La declaración de un procedimiento es similar a la de una función,
pero sustituyendo la palabra función por procedimiento y sin indicar el tipo de
datos del resultado; tampoco tienen sentencia devolver al final del código:
Procedimiento nombre_del_procedimiento [( lista de parámetros ) ]
[variables locales]
inicio
< instrucciones >
fin procedimiento
Procedimiento division (E entero:Dividendo,divisor; S entero:Cociente,Resto)
Inicio
Cociente<-Dividendo DIV divisor
Resto<-Dividendo –cociente*divisor
Fin procedimiento
LLAMADO DE UN PROCEDIMIENTO
El procedimiento se llama mediante la instrucción.
[llamar_a] nombre del procedimiento [lista de parámetros actuales]
Ejemplo
//Algoritmo aritmetica
entero M,N,P,Q,S,T
inicion
leer (M,N)
llamar_a division (M,N,P,Q)
escribir (P,Q)
EJERCICIOS
entero e,n,pot,fac
funcion FACTORIAL (entero n) : entero
procedimiento ingreso(var entero n)
inicio
fin
inicio
entero i, f
// segun el resultado f puede ser real
inicio
f<-1
para i<-1 hasta n haga
f<-f*i
fin para
retorne (f)
fin
escriba "Ingresar el numero "
lea n
//llamar ingreso(base,expo)
llamar ingreso(n)
fac<-FACTORIAL(n)
Escriba "El factorial es ", fac
fin
CALCULA LA POTENCIA DE UN ENTERO
entero base,expo,pot
procedimiento ingreso(var entero base,var entero expo)
inicio
escriba "Ingresar la base "
lea base
Escriba " Ingresar el exponente "
lea expo
fin
procedimiento Potencia(entero base , entero expo, var entero potencia)
entero i
inicio
potencia <-1
para I <-1 hasta expo haga
potencia <- potencia * base
fin para
fin
inicio
llamar ingreso(base,expo)
llamar potencia(base,expo,pot)
Escriba "Potencia es ", pot
fin