Les matrices

Fermé
bouchra ri Messages postés 10 Date d'inscription samedi 19 janvier 2013 Statut Membre Dernière intervention 19 janvier 2013 - 19 janv. 2013 à 13:48
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 19 janv. 2013 à 20:50
Bonjour, j'ai un problem je veux inserer la somme des colonne de matrice dans un tableau en c et ca marche pas aide moi svp

3 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
19 janv. 2013 à 14:32
Bonjour,

On n'est pas devin, nous n'avons aucun moyen pour deviner votre code. Merci donc de le poster (et de le mettre dans la balise "code" <> située à droite du bouton "souligné" S).
0
bouchra ri Messages postés 10 Date d'inscription samedi 19 janvier 2013 Statut Membre Dernière intervention 19 janvier 2013
19 janv. 2013 à 15:05
j'ai pas compri explique moi svp
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
19 janv. 2013 à 15:31
Je te demande d'être plus précis dans ton explication.
Montre-nous ton code en le mettant sur le forum pour qu'on voit l'implémentation de ton tableau, et dis-nous précisément à quel endroit tu veux insérer ta colonne.
0
bouchra ri Messages postés 10 Date d'inscription samedi 19 janvier 2013 Statut Membre Dernière intervention 19 janvier 2013
19 janv. 2013 à 15:53
j'ai cette matrice
011
000
101
j'écris cette algorithme en c
#include <stdio.h>
#include<conio.h>
main()
{
int T[3][3],L, C,I, J,SOM,i,;
bool trouve;
printf("Nombre de lignes: ");
scanf("%d", &L );
printf("Nombre de colonnes: ");
scanf("%d", &C );

for (I=1; I<=3; I++)
for (J=1; J<=3; J++)
{
printf("Elément[%d][%d] : ",I,J);
scanf("%d", &T[I][J]);
}
printf("Tableau donné :\n");
for (I=1; I<=3; I++)
{
for (J=1; J<=3; J++)
printf("%d", T[I][J]);
printf("\n");
}
for (J=1; J<=3; J++)
{
for (SOM=0, I=1; I<=3;I++)
SOM += T[I][J];
printf("Somme de colonne %d : %ld\n",J,SOM);
}
}
je veux incerer la somme des colonne dans un tableau
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
19 janv. 2013 à 16:18
Je t'avais demandé d'insérer ton code dans la balise <code>. Sinon c'est illisible pour nous...

Dans ton code, il y a des choses gênantes, et des choses bloquantes (à corriger à tout prix).
Autopsie du code :
#include<conio.h>
Non portable. A enlever.

main()
Non correct. C'est : int main(void) (pour la version sans argument).

int T[3][3],L, C,I, J,SOM,i,;
Evite d'utiliser des noms de variables majuscules. On le réserve généralement aux constantes.

bool
N'existe pas en C, mais en C++. En C, utilise un int (éventuellement short).

for (I=1; I<=3; I++)
Un tableau commence à 0. Le premier élément est T[0][0]. Il faut donc commencer à i=0; Ce qui donne : for (i=0; i<3; i++)
Pareil pour for(J=1...)

for (SOM=0, I=1; I<=3;I++)
Même si, rien à redire techniquement. Le SOM=0 n'a pas sa place ici. Il vaut mieux le mettre juste avant pour des raisons de clarté.
som=0;
for(i=0; i<3; i++)

printf("Somme de colonne %d : %ld\n",J,SOM);
Pourquoi mettre %ld ? SOM est de type int, pas de type long...

Tu as également oublié de mettre : return 0; à la fin du programme.

Une fois que tu auras corrigé tout ça, tu pourras te consacrer à l'ajout de la somme des colonnes.

Comment souhaites-tu mettre la somme des colonnes ? En créant une ligne supplémentaire ? Si c'est le cas, il faut définir ton tableau en conséquence : int T[4][3];
Il restera à faire T[3][j]=som; A toi de voir où il faut le mettre : à titre d'exercice.

Bon courage.
0
bouchra ri Messages postés 10 Date d'inscription samedi 19 janvier 2013 Statut Membre Dernière intervention 19 janvier 2013
19 janv. 2013 à 16:55
je compris bien le français mais je suis nouvelle dans cette algorithme elle exécute correctement et je veux insérer la somme(SOM)dans un tableau d'une seul dimension
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
19 janv. 2013 à 16:59
cette algorithme elle exécute correctement
Oui l'algorithme est bon. Mais le code est faux ! Ce n'est pas parce qu'il s'exécute correctement qu'il est bon...

je veux insérer la somme(SOM)dans un tableau d'une seul dimension
Cela fait partie des précisions que je demandais au début.
Dans ce cas, tu fais un tableau somme : int Tsomme[3]; et dans le code tu mettras au bon endroit : Tsomme[j]=som;
0
bouchra ri Messages postés 10 Date d'inscription samedi 19 janvier 2013 Statut Membre Dernière intervention 19 janvier 2013
19 janv. 2013 à 17:07
on n'a pas encore étudier cette programmation
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
19 janv. 2013 à 17:24
De quelle programmation parles-tu ?
Ce n'est pas clair ce que tu demandes.
Tu souhaites insérer une somme dans un tableau d'une seule dimension ? Mais d'où sort ce tableau d'une seule dimension. Tu n'as qu'une matrice (tableau à 2 dimensions) dans ton code.
Donne une exemple de ce que tu veux.
Tu as par exemple, le tableau tab1 = 1 2 3
Que veux-tu en sortie ? 1 2 3 6 ?
0
bouchra ri Messages postés 10 Date d'inscription samedi 19 janvier 2013 Statut Membre Dernière intervention 19 janvier 2013
19 janv. 2013 à 18:14
j'ai cette matrice
011
000
101
la somme des colonne
colonne 1 est 1
colonne 2 est 1
colonne 3 est 2
je veux mettre la résultat de la somme (1 1 2) dans un tableau d'une dimension
0