Este código simula un cajero automático donde puedes consultar saldo, retirar dinero, depositar dinero y salir del programa.
saldo = 1000 # Saldo inicial
def mostrar_menu():
print("1. Consultar saldo")
print("2. Retirar dinero")
print("3. Depositar dinero")
print("4. Salir")
def consultar_saldo():
print("Saldo disponible:", saldo)
def retirar_dinero(monto):
global saldo
if monto <= saldo:
saldo -= monto
print("Retiro exitoso. Saldo restante:", saldo)
else:
print("Saldo insuficiente")
def depositar_dinero(monto):
global saldo
saldo += monto
print("Depósito exitoso. Saldo actual:", saldo)
while True:
mostrar_menu()
opcion = int(input("Seleccione una opción: "))
if opcion == 1:
consultar_saldo()
elif opcion == 2:
monto_retiro = int(input("Ingrese el monto a retirar: "))
retirar_dinero(monto_retiro)
elif opcion == 3:
monto_deposito = int(input("Ingrese el monto a depositar: "))
depositar_dinero(monto_deposito)
elif opcion == 4:
print("Gracias por usar el cajero. ¡Hasta luego!")
break
else:
print("Opción no válida. Por favor, elija una opción válida.")
Versión simplificada:
saldo = 1000
while True:
print("1. Saldo\n2. Retirar\n3. Depositar\n4. Salir")
opcion = int(input("Opción: "))
if opcion == 1: print("Saldo:", saldo)
elif opcion == 2: saldo -= int(input("Monto a retirar: "))
elif opcion == 3: saldo += int(input("Monto a depositar: "))
elif opcion == 4: break
else: print("Opción inválida.")
Pueder ir al artículo principal:
Códigos Sencillos hechos en Python
I don’t think the title of your article matches the content lol. Just kidding, mainly because I had some doubts after reading the article.
Can you be more specific about the content of your article? After reading it, I still have some doubts. Hope you can help me.
mport os
import hashlib
Función para crear y guardar la contraseña en un archivo de forma segura
def crear_contraseña():
contraseña = input(«Ingrese su nueva contraseña: «)
ruta_archivo = «/storage/emulated/0/Documents/contraseña_hash.txt»
# Se utiliza hash SHA-256 para almacenar la contraseña de manera segura
hashed_contraseña = hashlib.sha256(contraseña.encode()).hexdigest()
with open(ruta_archivo, 'w') as archivo:
archivo.write(hashed_contraseña)
print("Contraseña creada y guardada correctamente.")
Función para verificar la contraseña al inicio del programa
def verificar_contraseña():
ruta_archivo = «/storage/emulated/0/Documents/contraseña_hash.txt»
if os.path.exists(ruta_archivo):
with open(ruta_archivo, 'r') as archivo:
contraseña_guardada = archivo.read().strip()
intentos = 3
while intentos > 0:
contraseña_ingresada = input("Ingrese su contraseña: ")
hashed_contraseña_ingresada = hashlib.sha256(contraseña_ingresada.encode()).hexdigest()
if hashed_contraseña_ingresada == contraseña_guardada:
print("Contraseña correcta. Acceso permitido.")
return True
else:
print("Contraseña incorrecta. Intentos restantes:", intentos)
intentos -= 1
print("Número máximo de intentos alcanzado. Saliendo del programa.")
return False
else:
print("No se encontró una contraseña. Debe crear una nueva.")
crear_contraseña()
return True
Función para cambiar la contraseña
def cambiar_contraseña():
ruta_archivo = «/storage/emulated/0/Documents/contraseña_hash.txt»
with open(ruta_archivo, ‘r’) as archivo:
contraseña_guardada = archivo.read().strip()
contraseña_actual = input("Ingrese su contraseña actual: ")
hashed_contraseña_actual = hashlib.sha256(contraseña_actual.encode()).hexdigest()
if hashed_contraseña_actual == contraseña_guardada:
nueva_contraseña1 = input("Ingrese la nueva contraseña: ")
nueva_contraseña2 = input("Ingrese la nueva contraseña nuevamente: ")
if nueva_contraseña1 == nueva_contraseña2:
# Almacenar la nueva contraseña
hashed_nueva_contraseña = hashlib.sha256(nueva_contraseña1.encode()).hexdigest()
with open(ruta_archivo, 'w') as archivo:
archivo.write(hashed_nueva_contraseña)
print("Contraseña cambiada exitosamente.")
else:
print("Las nuevas contraseñas no coinciden. No se ha cambiado la contraseña.")
else:
print("Contraseña actual incorrecta. No se ha cambiado la contraseña.")
Resto del código
if verificar_contraseña():
saldo = 1000 # Saldo inicial
def mostrar_menu():
print("1. Consultar saldo")
print("2. Retirar dinero")
print("3. Depositar dinero")
print("4. Cambiar contraseña")
print("5. Salir")
def consultar_saldo():
print("Saldo disponible:", saldo)
def retirar_dinero(monto):
global saldo
if monto <= saldo:
saldo -= monto
print("Retiro exitoso. Saldo restante:", saldo)
else:
print("Saldo insuficiente")
def depositar_dinero(monto):
global saldo
saldo += monto
print("Depósito exitoso. Saldo actual:", saldo)
while True:
mostrar_menu()
opcion = int(input("Seleccione una opción: "))
if opcion == 1:
consultar_saldo()
elif opcion == 2:
monto_retiro = int(input("Ingrese el monto a retirar: "))
retirar_dinero(monto_retiro)
elif opcion == 3:
monto_deposito = int(input("Ingrese el monto a depositar: "))
depositar_dinero(monto_deposito)
elif opcion == 4:
cambiar_contraseña()
elif opcion == 5:
print("Gracias por usar el cajero. ¡Hasta luego!")
break
else:
print("Opción no válida. Por favor, elija una opción válida.")