A maior rede de estudos do Brasil

como somar os números em matriz em programação

Programação I

If Farroupilha Campus Julio De Castilhos


3 resposta(s)

User badge image

Jean Michael Connory

Há mais de um mês

Início » Lógica de Programação » Exercício de Lógica de Programação: Soma de Matrizes

Exercício de Lógica de Programação: Soma de Matrizes

Postado Em 10/03/2017 [data do post] por Fábio dos Reis [autor do post] em Lógica de Programação [categoria do post]




Soma de Matrizes em Lógica de Programação

Olá pessoal! Nesta lição nós vamos mostrar mais um algoritmo resolvido para nosso curso de Lógica de Programação. O problema que vamos resolver é o seguinte:

Elabore um programa que peça ao usuário para informar 16 números, e os armazene em uma matriz 4×4.
Em seguida, o algoritmo deve solicitar ao usuário que entre com mais 16 números, e os armazene em uma segunda matriz 4×4.
O algoritmo, finalmente, deve realizar a soma das duas matrizes e mostrar na tela o resultado, na forma de uma tabela (matriz).

O resultado a ser obtido deve ser semelhante ao seguinte:

Para efetuar a soma de matrizes, basta efetuar a soma de cada posição correspondente em cada uma delas.

Vamos ao código que resolve nosso problema:

Código (português estruturado para VisualG):

Algoritmo "Soma de Matrizes"
// Autor : Fábio dos Reis
Var
// Criando três matrizes 4x4
A: vetor[0..3,0..3] de inteiro
B: vetor[0..3,0..3] de inteiro
S: vetor[0..3,0..3] de inteiro
linha, coluna: inteiro
Inicio
escreval("Algoritmo para soma de matrizes 4x4")
// preenchendo as duas matrizes
escreval("")
escreval("Preenchendo a matriz A:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      escreval ("Digite um número para inserir na matriz A")
      leia (A[linha,coluna])
   fimpara
fimpara
escreval("")
escreval("Preenchendo a matriz B:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      escreval ("Digite um número para inserir na matriz B")
      leia (B[linha,coluna])
   fimpara
fimpara
// Efetuando a soma das duas matrizes e armazenando o resultado na matriz S:
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      S[linha,coluna] <- A[linha,coluna] + B[linha,coluna]
   fimpara
fimpara
escreval("")
// Exibindo os resultados na tela:
escreval("Conteúdo da matriz A:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      se coluna < 3 entao
         escreva (A[linha,coluna])
      senao
         escreval (A[linha,coluna])
      fimse
   fimpara
fimpara
escreval("Conteúdo da matriz B:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      se coluna < 3 entao
         escreva (B[linha,coluna])
      senao
         escreval (B[linha,coluna])
      fimse
   fimpara
fimpara
escreval("A soma das matrizes A e B é:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      se coluna < 3 entao
         escreva (S[linha,coluna])
      senao
         escreval (S[linha,coluna])
      fimse
   fimpara
fimpara
Fimalgoritmo

Para resolver nosso problema, começamos criando três arrays bidimensionais (matrizes), 4×4, de nomes A, B (que serão somados) e S (que armazenará o resultado da soma).

Logo após a declaração dos arrays, devemos preenchê-los usando dois laços de repetição for (para) aninhados. Você pode também adaptar o código para usar preenchimento automático, usando números aleatórios, de modo a facilitar o teste do algoritmo posteriormente (para não precisar digitar todos os 32 valores das matrizes, 16 em cada uma!).


Início » Lógica de Programação » Exercício de Lógica de Programação: Soma de Matrizes

Exercício de Lógica de Programação: Soma de Matrizes

Postado Em 10/03/2017 [data do post] por Fábio dos Reis [autor do post] em Lógica de Programação [categoria do post]




Soma de Matrizes em Lógica de Programação

Olá pessoal! Nesta lição nós vamos mostrar mais um algoritmo resolvido para nosso curso de Lógica de Programação. O problema que vamos resolver é o seguinte:

Elabore um programa que peça ao usuário para informar 16 números, e os armazene em uma matriz 4×4.
Em seguida, o algoritmo deve solicitar ao usuário que entre com mais 16 números, e os armazene em uma segunda matriz 4×4.
O algoritmo, finalmente, deve realizar a soma das duas matrizes e mostrar na tela o resultado, na forma de uma tabela (matriz).

O resultado a ser obtido deve ser semelhante ao seguinte:

Para efetuar a soma de matrizes, basta efetuar a soma de cada posição correspondente em cada uma delas.

Vamos ao código que resolve nosso problema:

Código (português estruturado para VisualG):

Algoritmo "Soma de Matrizes"
// Autor : Fábio dos Reis
Var
// Criando três matrizes 4x4
A: vetor[0..3,0..3] de inteiro
B: vetor[0..3,0..3] de inteiro
S: vetor[0..3,0..3] de inteiro
linha, coluna: inteiro
Inicio
escreval("Algoritmo para soma de matrizes 4x4")
// preenchendo as duas matrizes
escreval("")
escreval("Preenchendo a matriz A:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      escreval ("Digite um número para inserir na matriz A")
      leia (A[linha,coluna])
   fimpara
fimpara
escreval("")
escreval("Preenchendo a matriz B:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      escreval ("Digite um número para inserir na matriz B")
      leia (B[linha,coluna])
   fimpara
fimpara
// Efetuando a soma das duas matrizes e armazenando o resultado na matriz S:
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      S[linha,coluna] <- A[linha,coluna] + B[linha,coluna]
   fimpara
fimpara
escreval("")
// Exibindo os resultados na tela:
escreval("Conteúdo da matriz A:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      se coluna < 3 entao
         escreva (A[linha,coluna])
      senao
         escreval (A[linha,coluna])
      fimse
   fimpara
fimpara
escreval("Conteúdo da matriz B:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      se coluna < 3 entao
         escreva (B[linha,coluna])
      senao
         escreval (B[linha,coluna])
      fimse
   fimpara
fimpara
escreval("A soma das matrizes A e B é:")
para linha de 0 ate 3 faca
   para coluna de 0 ate 3 faca
      se coluna < 3 entao
         escreva (S[linha,coluna])
      senao
         escreval (S[linha,coluna])
      fimse
   fimpara
fimpara
Fimalgoritmo

Para resolver nosso problema, começamos criando três arrays bidimensionais (matrizes), 4×4, de nomes A, B (que serão somados) e S (que armazenará o resultado da soma).

Logo após a declaração dos arrays, devemos preenchê-los usando dois laços de repetição for (para) aninhados. Você pode também adaptar o código para usar preenchimento automático, usando números aleatórios, de modo a facilitar o teste do algoritmo posteriormente (para não precisar digitar todos os 32 valores das matrizes, 16 em cada uma!).


User badge image

Vinicius Oliveira

Há mais de um mês

Boa noite Brendha, tudo bem?

Vou supor que você esteja aprendendo a lógica de programação em C, mas caso seja em outra linguagem, a lógica permanece a mesma, mudando apenas a forma de codificar. Mas, deixando tudo por escrito, para somar os numeros de uma matriz em programação, primeiro você deve criar um laço de repetição percorrendo a linha dessa matriz, dentro desse laço (seja ele for, while ou do while), há a necessidade de criar mais um laço para percorrer cada elemento da matriz. Deixarei um código criado em C como exemplo. Caso seja em python, eu poderei lhe ajudar também.


#include <stdio.h>


int main(void) {
  int matriz[3][5] = {
    {1,2,3,4,5},
    {1,2,3,4,5},
    {1,2,3,4,5}
  };


  int linha = 0;
  int coluna = 0;
  int soma = 0;


  //percorrer as linhas da matriz
  for (linha = 0; linha < 3; linha++)
  {
    //percorrer as colunas
    for(coluna = 0; coluna < 5; coluna ++)
    {
      soma = soma + matriz[linha][coluna];
    }
  }


  printf("A soma de todos os elementos da matriz eh: %d", soma);
}
User badge image

Milena Carneiro

Há mais de um mês

De uma forma mais genérica, complementando as respostas já dadas, a condição de parada do for eu não colocaria direto a quantidade de linhas ou de colunas. Tentaria usar algo do tipo:

for(int linha = 0; linha < matrix.length; linha++)
   for(int coluna = 0; coluna < matrix[linha].length; coluna++)

tanto em Java quanto em Javascript o .length vai dizer o tamanho da linha ou da coluna da tua matriz. Se for python, deve ser len(matrix). Mas independente da linguagem, só tô respondendo isso para que o exemplo seja mais aplicável em outros casos, que deveria funcionar para qualquer número de linhas ou colunas na matriz de entrada.

Essa pergunta já foi respondida por um dos nossos estudantes