forked from profejuanjosegallego/inversaingpython
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.py
More file actions
89 lines (72 loc) · 3.56 KB
/
main.py
File metadata and controls
89 lines (72 loc) · 3.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
helados = [] # Lista para almacenar los helados
contador_id = 1 # Contador para asignar IDs únicos
while True:
print("\nGestión de Helados")
print("1. Agregar un helado")
print("2. Ver lista de helados")
print("3. Modificar un helado")
print("4. Eliminar un helado")
print("5. Salir")
opcion = input("Seleccione una opción: ")
if opcion == "1": # Agregar un helado
nombre = input("Ingrese el nombre del helado: ")
descripcion = input("Ingrese la descripción del helado: ")
precio = input("Ingrese el precio del helado: ")
if precio.isdigit():
precio = float(precio) # Error: variable mal escrita
helado = {"id": contador_id, "nombre": nombre, "descripcion": descripcion, "precio": precio}
helados.append(helado) # Error: variable mal escrita
contador_id += 1
print("Helado agregado correctamente.")
else:
print("Error: El precio debe ser un número.")
elif opcion == "2": # Ver lista de helados
if len(helados) == 0: # Error: variable incorrecta
print("No hay helados registrados.")
else:
print("\nLista de Helados:")
for helado in helados:
print(f"ID: {helado['id']}, Nombre: {helado['nombre']}, Descripción: {helado['descripcion']}, Precio: {helado['precio']}") # Error en claves del diccionario
elif opcion == "3": # Modificar un helado
id_modificar = input("Ingrese el ID del helado a modificar: ")
if id_modificar.isdigit():
id_modificar = int(id_modificar)
encontrado = False
for helado in helados:
if helado["id"] == id_modificar:
nuevo_nombre = input("Nuevo nombre (deje en blanco para no cambiar): ") # Error: doble signo igual
nueva_descripcion = input("Nueva descripción (deje en blanco para no cambiar): ")
nuevo_precio = input("Nuevo precio (deje en blanco para no cambiar): ")
if nuevo_nombre:
helado["nombre"] = nuevo_nombre
if nueva_descripcion:
helado["descripcion"] = nueva_descripcion
if nuevo_precio.isdigit():
helado["precio"] = float(nuevo_precio)
print("Helado modificado correctamente.")
encontrado = True
break
if not encontrado:
print("Error: No se encontró un helado con ese ID.")
else:
print("Error: El ID debe ser un número.")
elif opcion == "4": # Eliminar un helado
id_eliminar = input("Ingrese el ID del helado a eliminar: ")
if id_eliminar.isdigit():
id_eliminar = int(id_eliminar)
encontrado = False
for helado in helados:
if helado["id"] == id_eliminar:
helados.remove(helado) # Error: variable incorrecta
print("Helado eliminado correctamente.")
encontrado = True
break
if not encontrado:
print("Error: No se encontró un helado con ese ID.")
else:
print("Error: El ID debe ser un número.")
elif opcion == "5": # Salir
print("Saliendo del programa...")
break
else:
print("Opción inválida, intente nuevamente.")