Jump to content
  • 0
Parazeit

Matrizes: Soma das colunas - C/C++

Question

-Obtenha e imprima um vetor que seja a soma dos elementos de cada coluna de
uma matriz numérica qualquer dada.

 

Uma questão aparentemente simples, mas que tem me dado um certo trabalho. Não faço ideia do que possa estar errado, por isso gostaria de pedir ajuda.

O programa não exibe a matriz que o usuário insere, nem faz a soma dos elementos de cada coluna como deveria.

(Irei publicar o código por completo para uma melhor visualização)

#include <stdio.h>

int main () {
	
	int i, j, tl = 0, tc = 0;
	int M[tl][tc], vet[tc];
	
	printf ("Informe a quantidade de linhas: "); // Entrada de dados.
	scanf ("%d", &tl);
	
	printf ("\n\nInforme a quantidade de colunas: "); // Entrada de dados.
	scanf ("%d", &tc);
	
	system ("cls"); // Limpa a tela.
	
	printf ("Preencha a matriz:\n");
	
	for (i = 0; i < tl; i++) { // Entrada de dados.
		for (j = 0; j < tc; j++) {
			printf ("\nInsira o elemento da posicao [%d][%d]: ", i + 1, j + 1);
			scanf ("%d", &M[i][j]);
		}
		
		printf ("\n");
	}
	
	system ("cls"); // Limpa a tela.
	
	printf ("[Matriz inicial]:\n\n"); // Saída de dados.
	
	for (i = 0; i < tl; i++) {		
		for (j = 0; j < tc; j++)
			printf ("%d ", M[i][j]);
		
		printf ("\n");
	}
	
	for (i = 0; i < tl; i++) {		
		for (j = 0; j < tc; j++)
			vet[i] = vet[i] + M[j][i];
	}
	
	printf ("[Vetor resultante]:\n\n"); // Saída de dados.
	
	for (i = 0; i < tc; i++)
		printf ("%d ", vet[i]);
		
	return 0;
}

 

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0
Em 2017-3-25 at 20:59, Parazeit disse:

int i, j, tl = 0, tc = 0; int M[tl][tc], vet[tc]; printf ("Informe a quantidade de linhas: "); // Entrada de dados. scanf ("%d", &tl); printf ("\n\nInforme a quantidade de colunas: "); // Entrada de dados. scanf ("%d", &tc);

Ao declarar o tl e o tc como 0, você está criando uma matriz e um vetor que não irão alocar nada.

Acho que inverter isso vai resolver seu problema. Primeiro receba o tamanho que você que pra tl e tc, depois declare a matriz e o vetor.

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

×

Important Information

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