from machine import Pin
import time
led = Pin("LED", Pin.OUT)
ledred = Pin(6, Pin.OUT)
ledgreen = Pin(7, Pin.OUT)
ledblue = Pin(8, Pin.OUT)
boton1 = Pin(18, Pin.IN, Pin.PULL_UP)
boton2 = Pin(19, Pin.IN, Pin.PULL_UP)
boton3 = Pin(20, Pin.IN, Pin.PULL_UP)
boton4 = Pin(21, Pin.IN, Pin.PULL_UP)
def llenado(matx):
for i in range(3):
for j in range(3):
print("A[", i, ",", j, "]: ", end="")
matx[i * 3 + j] = int(input())
def suma_escalar(matx, escalar):
for i in range(3):
for j in range(3):
matx[i * 3 + j] += escalar
def transponer(matx):
transpuesta = [0] * 9
for i in range(3):
for j in range(3):
transpuesta[j * 3 + i] = matx[i * 3 + j]
return transpuesta
def determinante(matx):
det = (matx[0] * (matx[4] * matx[8] - matx[5] * matx[7]) -
matx[1] * (matx[3] * matx[8] - matx[5] * matx[6]) +
matx[2] * (matx[3] * matx[7] - matx[4] * matx[6]))
return det
def despliegue(matx):
for i in range(3):
for j in range(3):
dato = matx[i * 3 + j]
print(dato, " ", end="")
if dato == 1:
ledred.value(1)
ledgreen.value(0)
ledblue.value(0)
elif dato == 2:
ledred.value(0)
ledgreen.value(1)
ledblue.value(0)
elif dato == 3:
ledred.value(0)
ledgreen.value(0)
ledblue.value(1)
time.sleep(2)
print(" ")
mata = [0] * 9
if __name__ == '__main__':
while True:
# Llenado de matriz
llenado(mata)
# Sumar un escalar
escalar_suma = int(input("Ingrese un número para sumar a cada elemento de la matriz: "))
suma_escalar(mata, escalar_suma)
print("Matriz después de sumar:", escalar_suma)
despliegue(mata)
# Calcular y mostrar la transpuesta
transpuesta = transponer(mata)
print("Transpuesta de la matriz:")
despliegue(transpuesta)
# Calcular y mostrar la determinante
det = determinante(mata)
print("Determinante de la matriz:", det)
# Despliegue de la matriz final
print("Matriz final después de las operaciones:")
despliegue(mata)