Python - Ejercicio

 
Vista:

Ejercicio

Publicado por Camilo (1 intervención) el 25/05/2020 00:13:30
Un matemático ha diseñado un juego muy sencillo para que sus hijos practiquen operaciones aritméticas básicas. En este juego, él les da una matriz cuadrada de más de 3x3 les pide que "repinten la X" usando una operación determinada. Es decir, ellos tienen que devolver la matriz aplicando la operación sobre todas las casillas que hacen parte de las diagonales de la matriz. Las operaciones posibles son sumar, restar, multiplicar y dividir el valor de cada casilla por él mismo. Por ejemplo si en una casilla de la X el número original era 5 y la operación que se debe aplicar es la suma, el valor 5 deberá reemplazarse por 10. Usted debe construir una función que le sirva a los hijos del matemático para verificar sus respuestas. La función debe recibir una matriz cuadrada y una operación y debe retornar la matriz modificada según las reglas del juego.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Ejercicio

Publicado por joel (901 intervenciones) el 25/05/2020 08:05:23
Hola Camilo, no me queda claro lo que deseas... puedes poner un ejemplo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Solucion

Publicado por Pablo Tombo (1 intervención) el 28/07/2021 01:20:12
Esta es una solucion en python al problema:

def pintar_x(matriz:list, operacion:str)->list:
for i in range(0,len(matriz)):
for j in range(0,len(matriz[i])):
if i == j:
if operacion == '+':
matriz[i][j] += matriz[i][j]
if operacion == '-':
matriz[i][j] -= matriz[i][j]
if operacion == '*':
matriz[i][j] = matriz[i][j]
if operacion == '/':
matriz[i][j] = int(matriz[i][j]/matriz[i][j])
elif i+j ==len(matriz)-1:
if operacion == '+':
matriz[i][j] += matriz[i][j]
if operacion == '-':
matriz[i][j] -= matriz[i][j]
if operacion == '':
matriz[i][j] *= matriz[i][j]
if operacion == '/':
matriz[i][j] = int(matriz[i][j]/matriz[i][j])
return matriz

Espero haberte ayudado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar