from machine import Pin
import time
# Configuración de pines para los LEDs (del pin 15 al 23)
led_pins = [Pin(i, Pin.OUT) for i in range(15, 24)]
sign_pin = Pin(23, Pin.OUT) # Pin para indicar si el número es negativo
def mostrar_binario(valor):
# Determina si el número es negativo
negativo = valor < 0
sign_pin.value(negativo) # Enciende el LED para negativo si aplica
# Convertir el valor a binario de 7 bits
binario = "{:07b}".format(abs(valor)) # Toma solo la parte positiva si es negativo
# Encender o apagar los LEDs según el valor binario
for i in range(7):
led_pins[i].value(int(binario[6 - i]))
def suma():
for i in range(1, 10):
resultado = 2 + i
print(f"2 + {i} = {resultado}")
mostrar_binario(resultado)
time.sleep(1)
def resta():
for i in range(1, 10):
resultado = 2 - i
print(f"2 - {i} = {resultado}")
mostrar_binario(resultado)
time.sleep(1)
def multiplicacion():
for i in range(1, 10):
resultado = 2 * i
print(f"2 * {i} = {resultado}")
mostrar_binario(resultado)
time.sleep(1)
def division():
for i in range(1, 10):
resultado = 2 / i
print(f"2 / {i} = {resultado:.2f}")
mostrar_binario(int(resultado)) # Muestra solo la parte entera
time.sleep(1)
def menu():
print("Selecciona una opción:")
print("1. Suma")
print("2. Resta")
print("3. Multiplicación")
print("4. División")
print("5. Salir")
while True:
menu()
opcion = input("Ingresa el número de la opción que deseas ejecutar: ")
if opcion == '1':
suma()
elif opcion == '2':
resta()
elif opcion == '3':
multiplicacion()
elif opcion == '4':
division()
elif opcion == '5':
print("Saliendo del programa...")
break
else:
print("Opción no válida, por favor intenta nuevamente.")