Desenvolva um algoritmo que solicite ao usuário duas matrizes A e B (3x3) e seus respectivos elementos. Após a inserção dos elementos das matrizes A e B o programa deve oferecer ao usuário as seguintes opções:
  • Somar as duas matrizes e mostrar a matriz resultante.
  • Subtrair as duas matrizes e mostrar a matriz resultante.
  • Sair do programa.
Dica: use a estrutura de repetição “Repita” para fazer o menu e só sair se for digitado a opção de sair.

Passo 1

O problema pede um algoritmo em pseudocódigo que leia duas matrizes quadradas A e B de ordem 3\times3, e depois apresente um menu usando a estrutura de repetição “Repita” para o usuário escolher entre:
  1. Somar A e B e mostrar o resultado.
  2. Subtrair B de A e mostrar o resultado.
  3. Sair do programa.
    Os conceitos necessários são: leitura de arrays bidimensionais, laço de repetição “Repita … Até”, seleção de casos (menu) e impressão de matrizes.

Passo 2

Primeiro, vamos ler os elementos das duas matrizes. Usamos dois laços aninhados (índices i e j de 1 a 3) para preencher A[i,j] e outro(s) laço(s) para preencher B[i,j].
Em seguida, criamos um laço “Repita … Até” que só termina quando o usuário digitar a opção de sair (por exemplo, opção 3). Dentro desse laço, mostramos o menu e lemos a variável opcao.

Passo 3

Usamos uma estrutura de seleção (Escolha … Caso) para tratar cada opcao:
  • Caso 1: percorremos as mesmas dimensões, calculamos C[i,j]=A[i,j]+B[i,j] e exibimos a matriz C.
  • Caso 2: calculamos C[i,j]=A[i,j]-B[i,j] e exibimos C.
  • Caso 3: apenas deixamos o laço terminar.
  • Caso contrário: informamos opção inválida.
    Ao fim de cada soma ou subtração, exibimos os elementos da matriz resultante em formato de 3 linhas por 3 colunas, e voltamos a exibir o menu até o usuário escolher sair.

Resposta

Algoritmo MatrizesAB
Var
A, B, C: inteiro[1…3,1…3]
i, j, opcao: inteiro
Início
// Leitura da matriz A
Para i de 1 até 3 Faça
Para j de 1 até 3 Faça
Escreva(“Digite A[”, i, “,”, j, "]: ")
Leia(A[i,j])
FimPara
FimPara
// Leitura da matriz B
Para i de 1 até 3 Faça
Para j de 1 até 3 Faça
Escreva(“Digite B[”, i, “,”, j, "]: ")
Leia(B[i,j])
FimPara
FimPara
Repita
Escreva("")
Escreva(“Menu de Operações:”)
Escreva(“1 - Somar A e B”)
Escreva(“2 - Subtrair B de A”)
Escreva(“3 - Sair”)
Escreva("Escolha uma opção: ")
Leia(opcao)
Escolha opcao  
  Caso 1:  
    // Soma das matrizes  
    Para i de 1 até 3 Faça  
      Para j de 1 até 3 Faça  
        C[i,j] ← A[i,j] + B[i,j]  
      FimPara  
    FimPara  
    Escreva("Matriz Soma (C = A + B):")  
    Para i de 1 até 3 Faça  
      Para j de 1 até 3 Faça  
        Escreva(C[i,j], " ")  
      FimPara  
      Escreva("")  
    FimPara  

  Caso 2:  
    // Subtração das matrizes  
    Para i de 1 até 3 Faça  
      Para j de 1 até 3 Faça  
        C[i,j] ← A[i,j] - B[i,j]  
      FimPara  
    FimPara  
    Escreva("Matriz Diferença (C = A - B):")  
    Para i de 1 até 3 Faça  
      Para j de 1 até 3 Faça  
        Escreva(C[i,j], " ")  
      FimPara  
      Escreva("")  
    FimPara  

  Caso 3:  
    Escreva("Encerrando o programa...")  

  Caso Contrário:  
    Escreva("Opção inválida! Tente novamente.")  
FimEscolha  
Até opcao = 3
FimAlgoritmo

Exercícios relacionados