Matrice Creuse vs Matrice réduite

Makoumba -  
 nabil_infs -
Bonjour,

J'ai un gros probleme avec les matrices!!!Elles m'aiment pas l0l

k sérieusement j'ai aucune idée comment faire un programme (C++) qui crée une matrice réduite (MatrReduite[][]) à partir d'une matrice creuse (MartCreuse[4][7]) qui contient des valeurs entières et que si la matrice creuse contient plus de 50% de valeurs non nulles, il faut que le programme avertisse que la création de la matrice réduite n'est pas efficace (j'image qu'il faut pour ça un if dans une grosse boucle for...ou sinon un while..jme trompe peut-être et à mon avis surment!)
En gors le programme doit permettre à l'usager d'entrer les valeur de la matrice creuse, d'afficher cette matrice et si possible la matrice réduite.

Je sais que jvous pose le probleme comme ça...mais c'est-à-dire que je débute dans le domaine jai de vague notion sur les boucles et pour les tableaux jsais qu'afficher la position d'une valeur. Bref j'espère que vous aller m'aider ou sinon bien m'orienter sur le problème...merci d'avance!
A voir également:

7 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
En notation algorithmique :
mat : Matrice à nbLignes et nbColonnes
caseNulle : entier
coeff : double

caseNulle=0
Pour i de 0 à nbLignes Faire
   Pour j de 0 à nbColonnes Faire
        Si (mat[i][j] == 0) Alors 
           caseNulle=caseNulle+1 
        FinSi
   FinPour
FinPour
coeff= caseNulle / (i*j)

Si(coeff>0.5) Alors
    MatriceReduite(mat)
FinSi

4
nabil_infs
 
opération sur la matrice creuse en c++
2
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Pour tester l'efficacité d'une matrice réduite. Tu peux parcourir toutes les cases de ta matrice, tu testes si la case est vide, si oui tu augmentes une variable caseNulle. Une fois toutes les cases parcourues, tu divises caseNulle par le nombre de cases totales.
Si le nouveau résultat est supérieur à 0.5 alors, une matrice réduite serait intéressante.

En espérant t'avoir aidé.

Bon code
1
Makoumba
 
c'est encore flou pour moi :S
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Makoumba
 
quelle partie fait quoi???
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Salut,

Je pense qu'avec l'ensemble des posts, tu as moyen de comprendre toute seule ;)
0
Makoumba
 
ha ha ! c'est correcte ...UN GROS MERCI !!! ;) je sais pas pourquoi j'ai fais un blocage là-dessus...Tout va pour le mieux maintenant, sauf qu'il faudrait que je renforce mes bases. Est-ce que t'a des titres de livre ou des sites pour que je puisse m'améliorer. Je connais celui de
https://openclassrooms.com/fr/ ,mais il n'y a pas trop d'exercices ....

En tout cas, merci encore
0