Matrice_fonction
serina_ker
Messages postés
9
Statut
Membre
-
fiddy Messages postés 441 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 441 Date d'inscription Statut Contributeur Dernière intervention -
SVP aidez moi pour résoudre cet exercice c'est trés uegrent
soit T un tableau de n lignes et m colonnes.
le problème de l'élément majoritaire consiste à determiner s'il exist une valeur x de T, telle que le nombre de {T[i][j]=x} soit supérieur à n*m/2
partie 1:manipulation des matrices:
ecrire un programme c qui:
1- lit une matrice de dimension n*m;
2-affiche l'élément majoritaire s'ilexiste avec le nombre exact de son apparition, dans le cas contraire on affiche le message "élément majoritaire inexistant!".
3-améliorer votre programme en réduisant l'espace de recherche. expliquer.
partie 2: manipulation des fonction
dans le but de bien structurer le programme, nous allons le décomposer sous programmes et ceci en utilisant les fonctions qui permettent de:
1-lire la matrice T,(lire);
2-détrmoner si T admet un élément majoritaire ou non et envoie la réponse (oui/non), (majoritaire);
3-améliorer le résultat, en faisant appel à lafonction majoritaire, pour afficher l'élément majoritaire s'il exist , et le message "élément majoritaire inexistant!" dans le cas contraire,(améliorer)
4-réafficher la matrice T, (écrire)
soit T un tableau de n lignes et m colonnes.
le problème de l'élément majoritaire consiste à determiner s'il exist une valeur x de T, telle que le nombre de {T[i][j]=x} soit supérieur à n*m/2
partie 1:manipulation des matrices:
ecrire un programme c qui:
1- lit une matrice de dimension n*m;
2-affiche l'élément majoritaire s'ilexiste avec le nombre exact de son apparition, dans le cas contraire on affiche le message "élément majoritaire inexistant!".
3-améliorer votre programme en réduisant l'espace de recherche. expliquer.
partie 2: manipulation des fonction
dans le but de bien structurer le programme, nous allons le décomposer sous programmes et ceci en utilisant les fonctions qui permettent de:
1-lire la matrice T,(lire);
2-détrmoner si T admet un élément majoritaire ou non et envoie la réponse (oui/non), (majoritaire);
3-améliorer le résultat, en faisant appel à lafonction majoritaire, pour afficher l'élément majoritaire s'il exist , et le message "élément majoritaire inexistant!" dans le cas contraire,(améliorer)
4-réafficher la matrice T, (écrire)
2 réponses
-
Bonjour,
Pour quoi avoir enlever le "Bonjour" mis automatiquement ?
Urgent ? C'est pour quand ?
Enfin, tu t'es contenté de recopier ton exercice... Pour espérer obtenir de l'aide, il faut montrer patte blanche :-) Autrement dit, il faut que tu nous dises ce que tu as commencé à faire (idéalement, tu peux poster ton début de code), que tu nous dises là où tu bloques, et ce que tu n'as pas compris.
Cordialement,-
-
-
regarde s'q j'ai fait pour la fct lire et majoritaire
#include<stdio.h> #include<stdlib.h> int lire_T(int T[][],int n,int m,int i,int j) { for(i=0;i<n;i++) { for(j=0;j<m;j++) { scanf("%d",&T[i][j]); } } int majoritaire(int x,) { int l,x,i,j,nb; l=(n*m)/2; nb=0; scanf("%d",&x); while(T[i][j]=x) { nb=nb+1; if(nb<l) { return (x) else return 0; } } } }
-
-
int lire_T(int T[][],int n,int m,int i,int j)
Il faut préciser la 2ème dimension de ta matrice a minima : int T[][TAILLE] (remplace TAILLE par le nombre de colonnes).
N'envoie pas i et j en paramètre. Il s'agit de variables locales.
IL ne faut pas oublier de renvoyer une variable (return ...;) puisque ta fonction retourne un int. Ou alors, tu mets void lire_T(...)
int majoritaire(int x,)
Tu as une virgule en trop.
l=(n*m)/2;
Que vaut n et m ?
while(T[i][j]=x)
i et j sont non initialisés. De plus, l'opérateur de comparaison en C est == et non =.
return (x)
Il manque un ; et une accolade fermant (pour fermer le if)
Ensuite je te conseille de revérifier le nombre d'accolades.
N'oublie pas la prochaine fois d'utiliser la balise <code c>ici tu mets ton code</code>