Jump to content
pachecok

Soma de elementos específicos de uma Matriz (em C)

Recommended Posts

Estou iniciando em programação e tenho um trabalho em C que devo:

 

Construir um programa que leia uma matriz 7x7 de inteiros.

Após a leitura, calcular o somatório apenas dos elementos abaixo destacados da matriz lida.

Mostre, os elementos destacados e o somatório.

 

A soma deve ser entre as posições da matriz refentes a imagem em anexo. 

É esta a dificuldade que eu encontrei, não sei os passos para realizar esta soma em específico então provavelmente a minha tentativa abaixo foi bizarra. :joy::joy::joy:

 

Alguém poderia me ajudar? Agradeço desde já. 

 

#include<stdio.h>
#include<conio.h>
#define linha 7
#define coluna 7
int main (void )
{
	int i, j, matriz[linha][coluna], result, soma;
  
	printf ("\nDigite valor para os elementos da matriz\n\n");
   
	for ( i=0; i<linha; i++ ){
		for ( j=0; j<coluna; j++ ){
      		printf ("\nElemento[%d][%d] = ", i, j);
      		scanf ("%d", &matriz[ i ][ j ]);
		}	
	}
   
	for ( i=0; i<linha; i++ ){
    	for ( j=0; j<coluna; j++ ){
      		printf ("%i", matriz[i][j]);
    	}
	printf("\n");
  	}
  	
  	for ( i=0; i<linha; i++ ){
		for ( j=0; j<coluna; j++ ){
      		result=result+matriz[i][j];
		}	
	}
	for ( i=0; i<linha; i++ ){
		for ( j=0; j<coluna; j++ ){
      		soma=soma+matriz[3][3]+matriz[4][2]+matriz[4][3]+matriz[4][4]+matriz[5][1]+matriz[5][2]+matriz[5][3]+matriz[5][4]+matriz[5][5]+matriz[6][0]+matriz[6][1]+matriz[6][2]+matriz[6][3]+matriz[6][4]+matriz[6][5]+matriz[6][6];
		}	
	}
	printf("\n\nA soma de todos valores da matriz: %d\n", result);
  	printf("\n\nA soma dos valores solicitados: %d\n", soma);
}

 

M7X7.jpg

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Pavolin9
      Estou desenvolvendo um sistema bem simples de um estoque de supermercado, que consiste em adcionar, remover e ver os itens, estou armazenando esses itens em uma matriz, segue o codigo:
      package main; import java.util.Scanner; public class IncluirItem{     public static void main(String[] args) {         String[][] itens = new String[2][5];         String[] campos = new String[7];                  campos [1] = "Nome";         campos [2] = "Codigo de barras";         campos [3] = "quantidade";         campos [4] = "validade";         campos [5] = "data de entrada";         Scanner sc = new Scanner(System.in);         System.out.println("Cadastro de itens: ");         //Adciona itens          for (int i = 0; i <2; i++) {                 System.out.printf("%d. item \n", (i+1));                          for (int j=0; j < 5; j++) {                     System.out.printf("%s ", campos[j+1]);                 System.out.printf("= ", i,(j+1));                 itens[i][j] = sc.next();             }             System.out.printf("\n");         }                  //Mostra itens         for (int i = 0; i <2; i++) {                 System.out.printf("%d. item \n", (i+1));             System.out.printf("ID do produto= 00%d \n", (i+1));             for (int j=0; j < 5; j++) {                     System.out.printf("%s ", campos[j+1]);                 System.out.printf("= %s \n", itens [i][j]);             }             System.out.printf("\n");         }                  //Remove itens                       } } Preciso remover um elemento dentro da matriz, que seria o item que esta sendo tirado do estoque, gostaria de saber como se faz isso.
       
    • By IgorExtreme
      Olá estou com problema nesta questão: "Escreva um programa que leia e armazene em um vetor os dados de 30 pessoas. Estes dados são o nome da pessoa, sua idade, e os nomes completos do pai e da mãe. A seguir, o programa deve identificar (e mostrar os índices) das pessoas que estão relacionadas por um parentesco avô-neto e irmão-irmão. No caso dos irmãos, deve ser informado ainda qual é o mais novo dos dois." O código é esse
      #include<stdio.h> #include<string.h> #define NUM 4 struct pessoa { char nome[20]; char mae[20]; char pai[20]; int idade; }; main() { struct pessoa vetorPessoas[NUM]; int i; printf("Digite os dados de %d pessoas:\n", NUM); for (i = 0; i < NUM; i++) { printf("Digite o nome da pessoa %d: ", i); fflush(stdin); gets(vetorPessoas[i].nome); printf("%s\n", vetorPessoas[i].nome); printf("Digite o nome da mae da pessoa %d: ", i); fflush(stdin); gets(vetorPessoas[i].mae); printf("%s\n", vetorPessoas[i].mae); printf("Digite o nome do pai da pessoa %d: ", i); fflush(stdin); gets(vetorPessoas[i].pai); printf("%s\n", vetorPessoas[i].pai); printf("Digite a idade da pessoa %d: ", i); fflush(stdin); scanf("%d", &vetorPessoas[i].idade); printf("%d\n", vetorPessoas[i].idade); if(!strcmp(vetorPessoas[0].pai, vetorPessoas[1].nome)){ printf("%s e avo de %s\n", vetorPessoas[1].pai, vetorPessoas[0].nome); } if(!strcmp(vetorPessoas[2].pai, vetorPessoas[3].nome)){ printf("%s e avo de %s\n", vetorPessoas[3].pai, vetorPessoas[2].nome); } } /*if(!strcmp(vetorPessoas[i].pai, vetorPessoas[i].nome)){ printf("%s e pai de %s\n", vetorPessoas[i].pai, vetorPessoas[i].pai); }*/ if(!strcmp(vetorPessoas[0].pai, vetorPessoas[1].pai)){ printf("Eles sao irmaos\n"); if(vetorPessoas[0].idade > vetorPessoas[1].idade){ printf("%s mais velho\n", vetorPessoas[0].idade); } else{ printf("%s e mais novo\n", vetorPessoas[1].idade); } } if(!strcmp(vetorPessoas[2].pai, vetorPessoas[3].pai)){ printf("Eles sao irmaos\n"); if(vetorPessoas[2].idade > vetorPessoas[3].idade){ printf("%s mais velho\n", vetorPessoas[2].idade); } else{ printf("%s e mais novo\n", vetorPessoas[3].idade); } } } O problema é que ele mostra quase tudo menos a parte se tal irmão é mais velho que o outro
    • By ricardo Oliv3ira
      Um cano cilíndrico de raio R1 vai ser usado para guardar outros dois canos de raio R2 e R3. Caso os dois últimos canos caibam dentro do primeiro, seu programa deve imprimir “Coube”. Caso contrário imprima “Não coube”.
      #include <stdio.h> int main(void) { float R1,R2,R3; printf("digite o 1º tamanho:"); scanf("%f",R1); printf("digite o 2º tamanho"); scanf("%f",R2); printf("digite o 3º tamanho"); scanf("%f",R3); if(R2,R3<R1){ printf("Coube"); } else(R2,R3>R1){ printf("Não Coube"); } return 0; }  
    • By Hodol
      Boa tarde, estou começando a programar e ainda não sei qual linguagem de programação eu devo iniciar. Me de uma luz, Obrigado!
    • By lucascastoria
      Procuro um profissional para desenvolver um sistema de compra em phyton.
      Interessados, favor me contatar pois explicarei melhor.
      Obrigado
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.