Faça um programa que leia duas matrizes
com valores reais. Ofereça ao usuário um menu de opções:
(a) somar as duas matrizes
(a) somar as duas matrizes
Passo 1
O enunciado pede um programa que leia duas matrizes 2×2 de valores reais e ofereça ao usuário um menu com a opção de somar essas duas matrizes. Para isso vamos precisar usar estruturas de repetição para ler as matrizes, armazená-las em listas bidimensionais, obter a escolha do usuário e implementar a soma elemento a elemento.
Passo 2
Vamos primeiro ler as duas matrizes. Podemos usar dois loops aninhados (i variando de 0 a 1 e j variando de 0 a 1) para ler cada elemento e armazenar em listas do Python. Por exemplo, iniciamos
A = [[0,0],[0,0]]
e em cada iteração fazemos A[i][j] = float(input(...))
. Repetimos o mesmo para B
.Passo 3
Depois de ler as duas matrizes, exibimos um menu simples com a opção “(a) Somar as matrizes” e capturamos a escolha do usuário usando
input()
. Se a opção for diferente de ‘a’, podemos informar “Opção inválida” e encerrar.Passo 4
Se o usuário escolheu ‘a’, criamos uma matriz resultado
C = [[0,0],[0,0]]
e novamente usamos loops aninhados para preencher cada C[i][j]
com a soma A[i][j] + B[i][j]
. Essa é a definição de soma de matrizes 2×2: somar elemento correspondente de A e B.Passo 5
Por fim, exibimos a matriz resultante C. Podemos iterar sobre as linhas de C e imprimir cada linha formatada, por exemplo, usando
print(f"{C[i][0]:.2f} {C[i][1]:.2f}")
para mostrar os valores com duas casas decimais.Resposta
Segue um exemplo de implementação em Python:
# Leitura da primeira matriz 2x2
def ler_matriz(nome):
M = [[0.0, 0.0], [0.0, 0.0]]
for i in range(2):
for j in range(2):
M[i][j] = float(input(f"{nome}[{i}][{j}] = "))
return M
A = ler_matriz('A')
B = ler_matriz('B')
# Menu de opções
entrada = input("Escolha a opção:\n(a) Somar as duas matrizes\nOpção: ")
if entrada.lower() == 'a':
# Soma de matrizes 2x2
C = [[0.0, 0.0], [0.0, 0.0]]
for i in range(2):
for j in range(2):
C[i][j] = A[i][j] + B[i][j]
# Exibição do resultado
print("Matriz resultante C = A + B:")
for linha in C:
print(f"{linha[0]:.2f} {linha[1]:.2f}")
else:
print("Opção inválida.")