Semana 9 - Funciones en Python: Ejercicios

Desafíos de Funciones en Python

Las funciones son como recetas que puedes guardar y reutilizar. ¡Son uno de los superpoderes más importantes de un programador! Prepárate para crear las tuyas.

Desafío 1: El Saludo Personalizado

Nivel: Básico

Tu Misión:

Crea una función llamada saludar que reciba un parámetro (el nombre de una persona) y muestre en pantalla un saludo personalizado.

Código de Ejemplo:

# Define la función aquí
def saludar(nombre):
  print(f"¡Hola, {nombre}! Qué bueno verte por aquí.")

# Ahora, úsala (llámala) varias veces
saludar("Ana")
saludar("Marcos")

Conceptos Clave:

Con def creas la función. Lo que está entre paréntesis, (nombre), es un parámetro: un dato que la función necesita para trabajar.

Desafío 2: La Calculadora de Áreas

Nivel: Intermedio

Tu Misión:

Crea una función calcular_area_rectangulo que reciba dos parámetros (base y altura) y devuelva el área calculada.

Código de Ejemplo:

# Define la función
def calcular_area_rectangulo(base, altura):
  area = base * altura
  return area

# Úsala y guarda el resultado en una variable
area_de_mi_patio = calcular_area_rectangulo(10, 5)
print(f"El área de mi patio es: {area_de_mi_patio} metros cuadrados.")

area_de_una_hoja = calcular_area_rectangulo(21, 29.7)
print(f"El área de una hoja A4 es: {area_de_una_hoja} cm2.")

Concepto Clave:

La palabra return es muy poderosa. No imprime nada, sino que "devuelve" un valor para que puedas usarlo fuera de la función, como guardarlo en una variable.

Desafío 3: El Analizador de Listas

Nivel: Avanzado

Tu Misión:

Crea una función analizar_lista que reciba una lista de números y devuelva un diccionario con la suma total, el promedio y el número más alto de la lista.

Código de Ejemplo:

# Define la función
def analizar_lista(numeros):
  # Primero, una verificación para evitar errores con listas vacías
  if not numeros:
    return None

  suma_total = sum(numeros)
  promedio = suma_total / len(numeros)
  maximo = max(numeros)

  # Creamos el diccionario que vamos a devolver
  reporte = {
    "suma": suma_total,
    "promedio": promedio,
    "valor_maximo": maximo
  }
  return reporte

# Úsala con una lista de notas
notas_de_historia = [8, 10, 7, 9, 10, 6]
analisis_notas = analizar_lista(notas_de_historia)

# Imprime el reporte
print("Análisis de Notas de Historia:")
print(analisis_notas)

Conceptos Clave:

Aquí combinas todo: recibes un tipo de dato complejo (una lista), usas funciones integradas de Python (sum(), len(), max()) y devuelves un resultado estructurado (un diccionario).

Entradas populares de este blog