Ir ao conteúdo
  • Cadastre-se

C Matriz em C soma das linhas e soma das colunas


santos93

Posts recomendados

O desafio propõe imprimir essa matriz:

                   1    2    3    4    5

                   6    7    8    9   10

                 11  12  13  14  15

                 16  17  18  19  20

                 21  22  23  24  25

 

O código eu consegui fazer:

int main(){
    int j, i;
    int square[5][5] = {0}, product [5][6];
    int table[5][6] = {{1,2,3,4,5},
                      {2,4,5,6,10},
                      {2,4,5,6,10},
                      {2,4,5,6,10}};
    for(j=0; j<5; ++j)
        for(i=0; i<5; ++i)
        square[j] = (j*5)+i+1;
    for(j=0; j<5; ++j){
        for(i=0; i<5; ++i)
            printf("%3d ", square[j]);
        printf("\n");
    }
    return(0);
} 

 

Agora o desafio é  imprimir a soma das linhas e das colunas, e imprimir dessa forma:

                   1    2    3    4    5 | 15

                   6    7    8    9   10| 40

                 11  12  13  14  15| 65

                 16  17  18  19  20| 90

                 21  22  23  24  25| 115

                ___________________

                 55  60  65  70  75

 

Me ajudem por favor

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@santos93    seu código está certo , só precisa organizar melhor , e na hora de postar use o botão  <>  que está na barra de ferramentas da janela de responder, pois sem ele seu código perdeu alguns caracteres como o [ i ] ,  então seria assim :

#include <stdio.h>
int main(){
    int j, i,res=0,res2[5]={0,0,0,0,0};
    int square[5][5] = {{1, 2, 3, 4,  5},
                        {6, 7, 8, 9, 10},
                        {11,12,13,14,15},
                        {16,17,18,19,20},
                        {21,22,23,24,25}},product [5][6];
    int table[5][6] = {{1,2,3,4, 5},
                       {2,4,5,6,10},
                       {2,4,5,6,10},
                       {2,4,5,6,10}};
    for(j=0; j<5; j++){
        for(i=0; i<5; i++){
            if(square[j][i]<10)printf("%d  ",square[j][i]);
            else printf("%d ",square[j][i]);
            res+=square[j][i];
            res2[i]+=square[j][i];
        }
        printf("=> %d\n",res);
        res=0;
    }
    printf("--------------------------\n");
    for(i=0;i<5;i++){
        printf("%d ",res2[i]);
    }
    return(0);
}

 

Link para o comentário
Compartilhar em outros sites

Você tem certeza que conseguiu imprimir corretamente? Eu tentei aqui e não deu certo seu código.

Para fazer a soma das linhas e já mostrar como desejado, você precisará apenas de 2 loops e uma variável para contar cada linha. 

int Matriz[5][5], SomaLinha = 0;
	for(i = 0; i < 5; i++)//Loop para as linhas
    {
    	for(j = 0; j < 5; j++)//Loop para as colunas
    	{
    		SomaLinha += Matriz[i][j];//Variável para fazer a soma das linhas
			printf("%d ", Matriz[i][j]);//Mostrar o valor da posição
			
		}
		printf("| %d\n", SomaLinha);//Imprimir o valor da soma da linha atual
		SomaLinha = 0;//Zerar a variável para somar a próxima linha
	}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!