Ejercicio de programación con Python: Reto matemáticas
Proyecto
2h 0m
Desarrolla una biblioteca en Python con módulos de operaciones, geometría y estadística, incluyendo manejo de errores y tests unitarios.
- Crea una estructura de proyecto con los siguientes archivos:
matematicas/
(directorio principal)__init__.py
(para convertirlo en un paquete)operaciones.py
(para operaciones básicas)geometria.py
(para cálculos geométricos)estadistica.py
(para análisis estadístico)main.py
(script principal para demostrar la funcionalidad)test_matematicas.py
(para tests unitarios)
- Implementa el módulo
operaciones.py
con las siguientes funciones:
suma(a, b)
: devuelve la suma de dos númerosresta(a, b)
: devuelve la resta de dos númerosmultiplicacion(a, b)
: devuelve el producto de dos númerosdivision(a, b)
: devuelve la división de dos números con manejo de error para división por ceropotencia(base, exponente)
: calcula la potencia de un númeroraiz_cuadrada(numero)
: calcula la raíz cuadrada con manejo de error para números negativos
- Implementa el módulo
geometria.py
con las siguientes funciones:
area_circulo(radio)
: calcula el área de un círculoperimetro_circulo(radio)
: calcula el perímetro de un círculoarea_triangulo(base, altura)
: calcula el área de un triánguloperimetro_triangulo(lado1, lado2, lado3)
: calcula el perímetro de un triánguloarea_cuadrado(lado)
: calcula el área de un cuadradoperimetro_cuadrado(lado)
: calcula el perímetro de un cuadradoarea_rectangulo(base, altura)
: calcula el área de un rectánguloperimetro_rectangulo(base, altura)
: calcula el perímetro de un rectángulo
- Implementa el módulo
estadistica.py
con las siguientes funciones:
media(datos)
: calcula la media aritmética de una lista de númerosmediana(datos)
: calcula la mediana de una lista de númerosmoda(datos)
: encuentra el valor más frecuente en una listadesviacion_estandar(datos)
: calcula la desviación estándarvarianza(datos)
: calcula la varianza de una lista de números
- Documenta todas las funciones utilizando docstrings que incluyan:
- Descripción breve de la función
- Parámetros que recibe
- Valor que devuelve
- Ejemplos de uso
- Posibles excepciones
- Implementa manejo de errores en todas las funciones donde sea necesario:
- Verificación de tipos de datos
- Control de valores negativos donde no sean válidos
- Manejo de divisiones por cero
- Validación de listas vacías en funciones estadísticas
Crea el script
main.py
que importe todos los módulos y muestre ejemplos de uso de cada función, presentando los resultados de forma clara y organizada.Implementa tests unitarios en
test_matematicas.py
utilizando el módulounittest
opytest
, con al menos un test por cada función implementada.Asegúrate de que todos los módulos funcionen correctamente como un paquete, permitiendo importaciones como
from matematicas.operaciones import suma
.Finaliza comprobando que todos los tests pasan correctamente y que el script principal muestra resultados coherentes para diferentes conjuntos de datos.
Más ejercicios de programación con Python
Evalúa tus conocimientos en Python con más ejercicios de programación de tipo Test, Puzzle, Código y Proyecto con VSCode.
Módulo math
Puzzle
Reto herencia
Código
Excepciones
Test
Introducción a Python
Test
Reto variables
Código
Funciones Python
Puzzle
Reto funciones
Código
Módulo datetime
Test
Reto acumulación
Código
Reto estructuras condicionales
Código
Polimorfismo
Test
Módulo os
Test
Reto métodos dunder
Código
Diccionarios
Puzzle
Reto clases y objetos
Código
Reto operadores
Código
Operadores
Test
Estructuras de control
Puzzle
Funciones lambda
Test
Reto diccionarios
Código
Tecnologías de este ejercicio de programación
Entornos de desarrollo para este ejercicio

Visual Studio Code

GitHub