Skip to content

Commit 8c572bc

Browse files
authored
Merge pull request #1 from Fabiantullo/copilot/update-readme-and-clean-code
Professionalize codebase: comprehensive README, constants, and code cleanup
2 parents dfc086f + 1d7f897 commit 8c572bc

3 files changed

Lines changed: 81 additions & 8 deletions

File tree

.gitignore

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Python cache files
2+
__pycache__/
3+
*.pyc
4+
*.pyo
5+
*.pyd
6+
.Python
7+
8+
# Virtual environments
9+
venv/
10+
env/
11+
ENV/
12+
13+
# IDE
14+
.vscode/
15+
.idea/
16+
*.swp
17+
*.swo
18+
*~
19+
20+
# OS files
21+
.DS_Store
22+
Thumbs.db

main.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,14 @@
11
from Package_funciones.funciones_generales import *
22
from Package_funciones.funciones_especificas import *
3+
4+
# Constantes del sistema
5+
CANTIDAD_CLIENTES = 15
6+
TIPOS_PAQUETE = 3
7+
38
def main():
4-
matriz_precios = crear_matriz(3,2,0)
9+
matriz_precios = crear_matriz(TIPOS_PAQUETE, 2, 0)
510
cargar_matriz_precios(matriz_precios)
6-
matriz_clientes = crear_matriz(15, 3, 0)
11+
matriz_clientes = crear_matriz(CANTIDAD_CLIENTES, TIPOS_PAQUETE, 0)
712
cargar_matriz(matriz_clientes, 0, 5)
813
while True:
914
print("""
@@ -25,9 +30,6 @@ def main():
2530
opcion_ingresada = get_int("Ingrese un numero: ", "Error numero no valido", 0)
2631
match opcion_ingresada:
2732
case 1:
28-
# lista_suma_paquetes = sumar_por_fila(matriz_clientes)
29-
# mostrar_lista(lista_suma_paquetes)
30-
#! No lo utilice porque interprete mal la consigna.
3133
mostrar_matriz(matriz_clientes)
3234
case 2:
3335
cantidad_clientes_sin_pequeños_grandes = recorrer_fila_especifico(matriz_clientes)
@@ -44,7 +46,8 @@ def main():
4446
case _:
4547
print("Opcion invalida.")
4648

47-
main()
49+
if __name__ == '__main__':
50+
main()
4851

4952
def calcular_minimo_porcentaje(inversiones, nombre_inversiones):
5053
lista_acciones_por_empresa = []

readme.md

Lines changed: 50 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,51 @@
1-
https://youtu.be/MNmPsGdR3LU
1+
# Sistema de Gestión de Envíos de Paquetes
22

3-
Link video de explicacion sobre la resolucion.
3+
## Descripción del Proyecto
4+
5+
Este proyecto es un sistema de gestión de envíos de paquetes que permite administrar y analizar información sobre los envíos de múltiples clientes. El programa trabaja con matrices para registrar la cantidad de paquetes por cliente y tipo, calculando recaudaciones y generando informes detallados.
6+
7+
## Tecnologías Utilizadas
8+
9+
- **Python 3.x**: Lenguaje de programación principal
10+
- **Módulos personalizados**:
11+
- `funciones_generales.py`: Funciones para manejo de matrices, validaciones y operaciones generales
12+
- `funciones_especificas.py`: Funciones específicas del dominio de negocio (precios, recaudación, búsquedas)
13+
14+
## Propósito
15+
16+
El sistema permite:
17+
- Gestionar información de 15 clientes y 3 tipos de paquetes (pequeño, mediano, grande)
18+
- Visualizar la cantidad de paquetes que envía cada cliente
19+
- Identificar clientes con patrones específicos de envío
20+
- Generar informes de recaudación ordenados por monto
21+
- Calcular totales de recaudación por tipo de paquete
22+
- Identificar clientes con mayor cantidad de envíos de un tipo específico
23+
24+
## Cómo Ejecutar el Programa
25+
26+
### Requisitos Previos
27+
- Python 3.x instalado en el sistema
28+
29+
### Pasos de Ejecución
30+
31+
1. Clonar o descargar el repositorio
32+
2. Navegar al directorio del proyecto
33+
3. Ejecutar el programa principal:
34+
```bash
35+
python main.py
36+
```
37+
38+
### Uso del Programa
39+
40+
Una vez iniciado, el programa presenta un menú interactivo con las siguientes opciones:
41+
42+
1. **Cantidad de paquetes que envía cada cliente**: Muestra una matriz con la cantidad de paquetes por cliente
43+
2. **Clientes sin paquetes pequeños ni grandes**: Cuenta clientes que solo enviaron paquetes medianos
44+
3. **Informe de clientes ordenados por recaudación**: Genera un informe descendente por total a pagar
45+
4. **Total de recaudación por tipo de paquete**: Muestra recaudación por tipo e identifica el más rentable
46+
5. **Clientes con más paquetes medianos**: Identifica los clientes que más paquetes medianos enviaron
47+
6. **Salir**: Finaliza el programa
48+
49+
## Video Explicativo
50+
51+
Para una demostración completa del funcionamiento del programa, puedes ver el video explicativo: [https://youtu.be/MNmPsGdR3LU](https://youtu.be/MNmPsGdR3LU)

0 commit comments

Comments
 (0)