Ir ao conteúdo

Posts recomendados

Postado

Olá, eu preciso fazer um programa em que permita o usuário escolher os valores de uma matriz [5][5] e por fim o algoritmo deve realizar a soma da primeira coluna da matriz. Alguém pode me ajudar? Até agora tá assim, porém está dando erro 

#include<stdio.h>
#include<conio.h>
int main ()
{
  int matriz[5][5],i, j, somac;
  

  printf ("\nDigite valor para as notas da matriz\n\n");

  for ( i=0; i<5; i++ ){
  
    for ( j=0; j<5; j++ ){
    
    
       printf ("\n Nota[%d][%d] = ", i, j);
       scanf ("%d", &matriz[ i ][ j ]);
    }
}

   printf("\n\n******************* Saida de Dados ********************* \n\n");

   for ( i=0; i<5; i++ )
    for ( j=0; j<5; j++ )
    {
       printf ("\nElemento[%d][%d] = %d", i, j,matriz[ i ][ j ]);
    }
    
    for(i=0;i<5;i++){
        for(j=0;j<5;j++){
            if(i == 0){
                somac=somac+matriz[5]5];
            }
        }
    }                 
    
    
    printf("\n------------------Saída---------------------\n");
    printf("\n\nSoma da primeira coluna = %d\n\n", somac); 


  return(0);
}

 

Postado

Você está somando somente a posição da linha 5 coluna 5:

for(i=0; i < 5 ; i++){
  for(j=0;j<5;j++){ 
    if(i == 0){
      somac=somac+matriz[5]5]; 
    } 
  } 
}

Você deve usar os contadores como linha e coluna, pois eles são incrementados com o laço.

for(i=0; i < 5 ; i++){
  for(j=0;j < 5;j++){ 
    if(i == 0){
      somac = somac + matriz[i][j]; 
    } 
  } 
}

. Também é necessário que inicialize a variável SOMAC com 0,  por definição, todas as variáveis da função main são inicializadas com LIXO, ou seja, valores que não te interessam no desenvolvimento do programa. Mais algumas observações:

  • o i dentro do IF, foi trocado para J, pois o que te interessa é a soma das primeiras posições... I só será 0 uma vez.
  • Você pode inserir #define TF 5, logo abaixo do seus #includes, antes da int main. Dessa forma, você está declarando uma constante TF de valor 5, que não será alterada durante o programa.
  • A expressão somac = somac + matriz[j], pode ser simplificada para: somac += matriz[[j];

 

Portanto, o código correto fica:

somac = 0;
for(i=0;i<TF;i++){
  for(j=0;j<TF;j++){
    if(j == 0){
      somac=somac+matriz[i][j];
    }
  }
}    

 

  • Curtir 1

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!