Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Semana 11
Mg. Alvarado Herrada, Edgar Francisco
Logro
Al finalizar la unidad, el estudiante conceptualiza las funciones básicas en
Python en programación funcional.
Importancia
La programación funcional obtiene su nombre de las funciones de escritura que
proporcionan la fuente principal de lógica en un programa.
Programación Funcional
en Python.
Entorno de trabajo
Intérprete OnLine:
https://www.onlinegdb.com/
La mayoría de nosotros hemos sido introducidos
a Python como un lenguaje orientado a objetos.
E s u n l e n g u a j e e n el q u e NO s e utiliza exclusivamente c lases para
construir nuestros programas .
La variable A puede
modificarse fuera del
alcance de impure_sum
Los programadores reducen los efectos secundarios en su
código para que sea más fácil de seguir, probar y depurar.
1.Ejemplo de Python
Cuando no se asigna la fn lambda a una variable, la
fn resultante se denomina anónima.
E s t a s f u n c i o n es a n ó n i m a s s o n e x t re m a d a m e n t e útiles, e s p e c i a l m e n t e
c u a n d o s e u s a n como e n t r a d a p a r a otra función.
L a s f u n c i o n e s q u e p e r m i te n e s t e tipo d e
co m p o r ta m i e nto s e d e n o m i n a n f u n c i o n e s d e
pri mera c l a s e .
Cualquier l e n g u a j e q u e c o n t e n g a f u n c i o n e s d e p r i m e ra
c l a s e puede escribirse e n u n estilo f u n ci o n a l .
Hay un conjunto de funciones importantes de primera clase
que se usan comúnmente dentro del paradigma funcional
E s t a s f unciones t o m a n u n iterable d e Python, como el ejemplo de sorted(),
a p l i c a n u n a función p a r a c a d a element o d e l a lista.
Todas s i g u e n l a forma g e n e r a l d e
print('El precio de la compra tras aplicar los descuentos es: ', price_basket({1000:20, 500:10, 100:1},
apply_discount))
print('El precio de la compra tras aplicar el IVA es: ', price_basket({1000:20, 500:10, 100:1}, apply_IVA))
Programación Funcional
Ejercicio 2
Escribir una función que simule una calculadora
científica que permita calcular el seno, coseno,
tangente, exponencial y logaritmo neperiano. La
función preguntará al usuario el valor y la función
a aplicar, y mostrará por pantalla una tabla con
los enteros de 1 al valor introducido y el
resultado de aplicar la función a esos enteros..
1.- ANALISIS DEL PROBLEMA
Pregunta 1: ¿Cuál es el problema que se ha de resolver?
calculator()
SOLUCION2
from math import sin, cos, tan, exp, log
def calculator():
'''
Función que aplica una función seleccionada por el usuario (seno, coseno, tangente, exponencial o log
arítmo) a la lista de enteros desde 1 hasta n.
Imprime por pantalla una tabla con la secuencia de enteros y el resultado de aplicarles la función introd
ucida.
Parámetros:
f: Es una cadena con la función a aplicar (sin, cos, tan, exp o log).
n: Es un entero positivo.
'''
functions = {'sin':sin, 'cos':cos, 'tan':tan, 'exp':exp, 'log':log}
f = input('Introduce la función a aplicar (sin, cos, tan, exp, log): ')
n = int(input('Introduce un entero positivo: '))
results = [functions[f](x) for x in range(1, n+1)]
for i in range(n):
print (i + 1, '\t', results[i])
return
calculator()