Matrice

commnt calcul une seul line dans une matrice
par ex:
1 2 3 4
5 6 7 8
9 7 8 3
alor le premier line =1+2+3+4=10
STP ..commnt fait dans langage C

2 réponses

  1. Par pitié, prends soin d'écrire tes messages Forum de manière plus correctes et lisibles.. J'ai dû lire 4/5 fois avant de comprendre..

    Bref, pour lire une matrice de forme :

    Typedef int Tab[10][10];


    Tu peux faire simplement dans ton main:

    Tab t;//Initialisation de ton tableau
    int i; //Variable pour la boucle For qui va suivre
    int y;//Variable de selection de la ligne
    puts("Selectionnez la ligne à lire");
    scanf("%d",&y);
    For(i=0;i<10;i++)      //Boucle de lecture
    {
         printf("Voici la valeur %d de la ligne %d : %d\n",i,y,t[i][y]);
     }
    

    Je n'ai pas testé les warnings ou les erreurs, à toi de le faire s'il y en a (y)
    Ne pètes pas un câble. Débranches le juste, c'est moins risqué :)
    1. Contributeur
      je pense qu'il veut plutôt additionner les chiffres de la première ligne entre eux, mais c'est vrai que la formulation de sa question n'est pas claire.
    2. bah du coup ça reviendrait au même, avec une variable en plus, et le printf remplacé par la variable additionnée :')
    3. Contributeur
      a mon sens, ton code n'affiche pas une "ligne", car le y devrait être à la place de ton i, là il affiche une "colonne".. voilà un exemple avec une initialisation d'un tableau comme celui de james, dont les dimensions sont de 3 lignes et 4 colonnes, et des noms de variables plus parlants

      #include <stdio.h>
      
      int main(void) {
          int m[3][4] = {
              { 1, 2, 3, 4},
              { 5, 6, 7, 8},
              { 9, 7, 8, 3}
          };
      
          int col;
          int lin = 0;  /* 1ère ligne */
          for (col=0; col<4; col++)
              printf("%d\n", m[lin][col]);
      
          return 0;
      }

      donne :

      $ gcc -Wall james004.c
      $ ./a.out
      1
      2
      3
      4

      et, comme tu dis, il ne reste plus qu'à faire des additions :-)

      Dal
    4. Exact, j'ai confondu les places, après j'avais prévenu, j'ai un peu fais le code à l'arrache pour aider james sur le coup, j'ai rien vérifié par la suite, juste le squelette x)
  2. C'est simple cher amis, il suffit de parcourir la première ligne par une boucle for():
    #include <stdio.h>

    int main(void) {
    int m[3][4] = {
    { 1, 2, 3, 4},
    { 5, 6, 7, 8},
    { 9, 7, 8, 3}
    };

    int j,s=0;
    int i = 0;
    /* 1ère ligne */
    for (j=0; j<4; j++)
    s+=m[i][j];
    printf(" la somme est : %d\n", s);

    return 0;
    }

    Je vous invite à visiter mon site qui contient plusieurs exercices corrigés en langage c https://www.exam-lib.com/