0% encontró este documento útil (0 votos)
30 vistas43 páginas

Presentacion Sesion07

El documento describe los tipos de parámetros en funciones, diferenciando entre parámetros por valor y por referencia, y proporciona ejemplos de su uso. También aborda el concepto de recursividad, explicando su estructura y comparándola con la iteración, además de presentar ejemplos prácticos como el cálculo del factorial y la serie de Fibonacci. Finalmente, se incluyen ejercicios resueltos que ilustran la aplicación de estos conceptos en programación.

Cargado por

Jean
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
30 vistas43 páginas

Presentacion Sesion07

El documento describe los tipos de parámetros en funciones, diferenciando entre parámetros por valor y por referencia, y proporciona ejemplos de su uso. También aborda el concepto de recursividad, explicando su estructura y comparándola con la iteración, además de presentar ejemplos prácticos como el cálculo del factorial y la serie de Fibonacci. Finalmente, se incluyen ejercicios resueltos que ilustran la aplicación de estos conceptos en programación.

Cargado por

Jean
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

TIPOS

DE PARÁMETROS
DE LAS FUNCIONES

Mg. Marcelino Torres Villanueva


PARÁMETROS POR VALOR
Son aquellos a través de los cuales
se pasan valores a la función, es
decir se hace una copia de la
variable pasada como
argumento. A estos parámetros se
les conoce como parámetros de
entrada.
Ejemplo

DIAGRAMA DE FLUJO
CODIFICACION SALIDA DE PANTALLA
El resultado es : x=3

La variable x del programa principal al llamar a la función calculo hace una copia de
su valor al parámetro de la función, luego la que se incrementa es la variable x de la
función y no la variable x del programa principal.
PARÁMETROS POR REFERENCIA
Son aquellos a través de los cuales se
pasan referencias de las variables esto
permite que las variables pasadas
como argumento se puedan modificar.
Para declarar un parámetro por
referencia se utiliza el operador
referencia &.
Ejemplo

DIAGRAMA DE FLUJO
CODIFICACION SALIDA DE PANTALLA
El resultado es : x=5

La variable x del programa principal al llamar a la función calculo pasa la


referencia de la variable esto hace que la variable x se pueda modificar.
Ejercicios resueltos

01. Programa para intercambiar el valor de 2 variables numéricas

DIAGRAMA DE FLUJO
DIAGRAMA DE FLUJO
CODIFICACION SALIDA DE PANTALLA
Valor de a : 75
Valor de b : 30
Nuevo valor de a : 30
Nuevo valor de b : 75
Ejercicios resueltos

02. Programa para ingresar el valor de un Punto en coordenadas Polares y


reporte su equivalente en coordenadas cartesianas.

DIAGRAMA DE FLUJO
DIAGRAMA DE FLUJO
DIAGRAMA DE FLUJO
CODIFICACION SALIDA DE PANTALLA
Valor de r : 90
Angulo en grados
sexagesimales : 180
x = -90
y = -7.86805e-006
Ejercicios resueltos

03. Ingrese 2 puntos del plano cartesiano y reporte la ecuación de la


recta que los contiene.

DIAGRAMA DE FLUJO
DIAGRAMA DE FLUJO
DIAGRAMA DE FLUJO
DIAGRAMA DE FLUJO
CODIFICACION SALIDA DE PANTALLA
Primer Punto
Valor de x : 10
Valor de y : 12
Segundo Punto
Valor de x : 15
Valor de y : 17
y = 1x+2
Ejercicios resueltos

03. Reportar los n primeros números primos

DIAGRAMA DE FLUJO
DIAGRAMA DE FLUJO
DIAGRAMA DE FLUJO
DIAGRAMA DE FLUJO

SALIDA DE PANTALLA
Valor de n: 10
2 3 5 7 11 13 17 19 23 29
CODIFICACION
RECURSIVIDAD

Mg. Marcelino Torres Villanueva


¿QUE ES RECURSIVIDAD?
➢La recursividad es un concepto fundamental en
matemáticas y en computación.

➢Es una alternativa diferente para implementar


estructuras de repetición (ciclos). Los módulos se
hacen llamadas recursivas.

➢Se puede usar en toda situación en la cual la solución


pueda ser expresada como una secuencia de
movimientos, pasos o transformaciones gobernadas
por un conjunto de reglas no ambiguas.
Divide y vencerás

La recursividad nos permite solucionar un problema bajo el criterio de


“Divide y Vencerás”

Un problema complejo se divide en problemas más pequeños, de forma


que se compone la solución al final a partir de las soluciones
parciales que se van obteniendo.

Resolver un problema mediante recursión significa que la solución


depende de las soluciones de pequeñas instancias del mismo problema
FUNCION RECURSIVA
Las funciones recursivas se componen de:

➢Caso base: Una solución simple para un caso particular (puede


haber más de un caso base).
➢Caso recursivo: Una solución que involucra volver a utilizar la
función original, con parámetros que se acercan más al caso
base. Los pasos que sigue el caso recursivo son los siguientes :
1. La función se llama a sí misma.
2. El problema se resuelve, resolviendo el mismo problema
pero de tamaño menor
3. La manera en la cual el tamaño del problema disminuye
asegura que el caso base eventualmente se alcanzará
EJEMPLO : FACTORIAL
Muchas funciones matemáticas se definen recursivamente. Un
ejemplo de ello es el factorial de un numero entero:

5! = 5 x 4 x 3 x 2 x 1 5! = 5 x 4!
4! = 4 x 3 x 2 x 1 4! = 4 x 3!
3! = 3 x 2 x 1 3! = 3 x 2!
2! = 2 x 1 2! = 2 x 1!
1! = 1 x 1 1! = 1 x 0!
0! = 1 0! = 1

Sin recursividad Con recursividad


SOLUCION
Aquí podemos ver la secuencia que toma el factorial

1 si N = 0 (base)
N! =

N * (N – 1) ! si N > 0 (recursión)

Un razonamiento recursivo tiene dos partes: la base y la regla recursiva de


construcción. La base no es recursiva y es el punto tanto de partida como de
terminación de la definición.
factorial (5) = 5 * factorial(4) = 5 * 24 = 120

factorial (4) = 4 * factorial(3) = 4 * 6 = 24

factorial(3) = 3 * factorial(2) =3*2=6

factorial(2) = 2 * factorial(1) =2*1=2

factorial(1) = 1 * factorial(0) =1*1=1

factorial(0) = 1 = 1
Ejercicio : Hacer un programa para calcular el factorial de un numero usando recursividad
¿Recursividad o Iteración?
Semejanzas
- Ambas estrategias implican repetición: La iteración usa explícitamente una estructura de repetición que
en la recursión esta implícita
- Ambas requieren una condición de corte: la iteración cuando llega al tope del contador y la recursión
cuando alcanza el caso base.
- Ambas se aproximan a la solución gradualmente: la iteración modificando las variables iterativamente y
la recursión produciendo versiones mas sencillas del problema original.
- Ambas pueden caer en bucles infinitos

Diferencias
- La recursividad produce algoritmos cortos y elegantes, mientras que la iteración presentan la habitual
forma de uno o varios bucles.
- La recursión conlleva una repetida invocación de la función que, en general, incurre en un gasto de
tiempo y de memoria que no se da en la versión iterativa.
01. Programa para calcular la potencia de x elevado a la n. x real y n>0
02. Crear una función recursiva para calcular el enésimo termino de la serie de
Fibonacci
0 , 1, 1, 2, 3, 5, 8, 13, 21, …

Esta serie tiene la siguiente regla:

0 si n =1

fibo(n) = 1 si n = 2

fibo(n-1) + fibo(n-2) Si n>3

La función recursiva será:


03. Programa para calcular la suma de los dígitos de un numero
04. Programa para ingresar un número y lo reporte al revés
05. Programa para ingresar un número y reporte los factores primos de un numero
06. Programa para ingresar un número de base 10 y lo reporte a base b (entre 2 y 9)
07. Programa para calcular el máximo común divisor de 2 números usando el
algoritmo de Euclides.

También podría gustarte