Matrice [Fermé]

james004 1 Messages postés dimanche 30 octobre 2016Date d'inscription 31 octobre 2016 Dernière intervention - 31 oct. 2016 à 12:01 - Dernière réponse : abdelouafi1 5 Messages postés dimanche 5 octobre 2014Date d'inscription 24 décembre 2016 Dernière intervention
- 24 déc. 2016 à 15:11
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
Afficher la suite 

6 réponses

Desperaxe 95 Messages postés dimanche 22 février 2015Date d'inscription 5 novembre 2017 Dernière intervention - Modifié par Desperaxe le 1/12/2016 à 13:13
0
Utile
4
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é :)
[Dal] 4466 Messages postés mercredi 15 septembre 2004Date d'inscriptionContributeurStatut 29 novembre 2017 Dernière intervention - 1 déc. 2016 à 18:52
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.
Desperaxe 95 Messages postés dimanche 22 février 2015Date d'inscription 5 novembre 2017 Dernière intervention - 1 déc. 2016 à 19:16
bah du coup ça reviendrait au même, avec une variable en plus, et le printf remplacé par la variable additionnée :')
[Dal] 4466 Messages postés mercredi 15 septembre 2004Date d'inscriptionContributeurStatut 29 novembre 2017 Dernière intervention - 1 déc. 2016 à 23:15
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
Desperaxe 95 Messages postés dimanche 22 février 2015Date d'inscription 5 novembre 2017 Dernière intervention - 2 déc. 2016 à 09:16
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)
abdelouafi1 5 Messages postés dimanche 5 octobre 2014Date d'inscription 24 décembre 2016 Dernière intervention - Modifié par abdelouafi1 le 24/12/2016 à 15:11
0
Utile
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 http://www.exam-lib.com/
Commenter la réponse de abdelouafi1