# Programación funcional
# lo que hemos estado haciendo hasta ahora es lineal
# cada instrucción sigue a la siguiente hasta que acabamos
# El primer paso para una programación estructurada es usar funciones
# ¿Qué es una función?
# Bloque de código reutilizable que permite recibir parámetros y devolver un resultado
# sintaxis def nombre_de_la_funcion(parametros):
# Esta función no tiene parámetros pero uso () igual
def saludar():
# Estas tres líneas se ejecutan cuando se llama a la función
print("Hola")
print("¿Qué tal estás")
print("Yo muy bien")
saludar()
print("------")
saludar()
print("------")
# Incorporamos un parámetro
def saludarNombre(nombre):
print(f"Hola {nombre}")
print("¿Qué tal estás")
print("Yo muy bien")
saludarNombre("Ana")
print("------")
saludarNombre("Juan")
# Añadir devolver un resultado
def suma(a, b):
return a + b
print(suma(2, 3))
print(suma(8, 10))
resultado = suma(19, 35)
print(resultado)
# Un ejemplo más complejo
def contarLetra(cadena, letra):
contador = 0
for c in cadena:
if c == letra:
contador += 1
return contador
total = contarLetra("mancha", "a")
print(total)
total = contarLetra("En un lugar de la mancha", "n")
print(total)