Tri bulle d'un tableau a n dimension
Fermé
mimoonet
Messages postés
9
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
24 janvier 2009
-
24 janv. 2009 à 13:10
mimoonet Messages postés 9 Date d'inscription samedi 24 janvier 2009 Statut Membre Dernière intervention 24 janvier 2009 - 24 janv. 2009 à 19:03
mimoonet Messages postés 9 Date d'inscription samedi 24 janvier 2009 Statut Membre Dernière intervention 24 janvier 2009 - 24 janv. 2009 à 19:03
A voir également:
- Tri bulle d'un tableau a n dimension
- Tableau croisé dynamique - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
- Comment faire un tableau - Guide
- Video bulle whatsapp - Accueil - Messagerie instantanée
14 réponses
mimoonet
Messages postés
9
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
24 janvier 2009
1
24 janv. 2009 à 14:53
24 janv. 2009 à 14:53
Dernier soucis a résoudre et puis j'ai clôturer ce programme.
soit le tableau 2x3
9 3 0
3 6 4
deviend
0 3 9
3 4 6
et devrai donner
0 3 3
4 6 9
pour pouvoir faire ça, je dois ajouter une condition dans la première boucle ? ou je dois implémenter une nouvelle boucle for au sommet des 2 autres ?
soit le tableau 2x3
9 3 0
3 6 4
deviend
0 3 9
3 4 6
et devrai donner
0 3 3
4 6 9
pour pouvoir faire ça, je dois ajouter une condition dans la première boucle ? ou je dois implémenter une nouvelle boucle for au sommet des 2 autres ?
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
24 janv. 2009 à 15:45
24 janv. 2009 à 15:45
D'ailleurs, j'ai mal regardé mais ton algorithme n'est pas bon.
Il te manque une boucle for allant de i à m.
Tu devrais vraiment lire l'article que je t'ai donné pour voir comment ça marche pour un tableau une ligne. Ca t'aidera à le faire sur une matrice.
Quand je dis que tu devrais passer par un tableau simple, ça veut pas dire utiliser forcément un autre tableau. Mais plutôt considérer ta matrice comme un tableau simple. Par exemple :
Il te manque une boucle for allant de i à m.
Tu devrais vraiment lire l'article que je t'ai donné pour voir comment ça marche pour un tableau une ligne. Ca t'aidera à le faire sur une matrice.
Quand je dis que tu devrais passer par un tableau simple, ça veut pas dire utiliser forcément un autre tableau. Mais plutôt considérer ta matrice comme un tableau simple. Par exemple :
int tab[3][3]; for(int i=0;i<9;i++) printf("%d ",tab[0][i]);
mimoonet
Messages postés
9
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
24 janvier 2009
1
24 janv. 2009 à 13:24
24 janv. 2009 à 13:24
Je suis désoler pour l'affichage du code, si il y a moyen de vous envoyer mon code source je le ferai volontiers car il n'est pas des plus lisible. J'espère seulement que les erreurs seront plus lisible x)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
24 janv. 2009 à 13:38
24 janv. 2009 à 13:38
Salut,
Avant de mettre ton code fait clic sur le bouton
Tu n'as qu'à mettre ton code entre les balises
Avant de mettre ton code fait clic sur le bouton
<>qui est à côté de G I S et tu verras que <code></code > est inséré
Tu n'as qu'à mettre ton code entre les balises
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
24 janv. 2009 à 13:40
24 janv. 2009 à 13:40
Re,
Sinon tu as un exemple de tri à bulle ici http://www.commentcamarche.net/forum/affich 4795788 c tri#2
Sinon tu as un exemple de tri à bulle ici http://www.commentcamarche.net/forum/affich 4795788 c tri#2
mimoonet
Messages postés
9
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
24 janvier 2009
1
24 janv. 2009 à 14:00
24 janv. 2009 à 14:00
Je vais adapter ton lien avec mon programme.
Je n'ai pas sur modifier mon message, donc je n'ai pas su modifier la lisibilité de mon code, je le saurai a l'avenir :)
je te tiens au courant si j'ai d'autre soucis.
merci a toi.
(désoler pour le double poste concernant le tri d'un tableau).
Je n'ai pas sur modifier mon message, donc je n'ai pas su modifier la lisibilité de mon code, je le saurai a l'avenir :)
je te tiens au courant si j'ai d'autre soucis.
merci a toi.
(désoler pour le double poste concernant le tri d'un tableau).
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
24 janv. 2009 à 14:03
24 janv. 2009 à 14:03
Salut,
Dans la partie "tri à bulle", tu fais deux boucles for. j varie de 0 à m.
Et pourtant tu mets :
cdlt
Dans la partie "tri à bulle", tu fais deux boucles for. j varie de 0 à m.
Et pourtant tu mets :
if(tab[i][j] > tab[i][j+1]).L'indice j+1 aura pour valeur m+1 lors de la dernière itération. D'où une valeur bidon qui apparaît dans ton tableau.
cdlt
mimoonet
Messages postés
9
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
24 janvier 2009
1
24 janv. 2009 à 14:20
24 janv. 2009 à 14:20
mais je ne vois pas ce que je dois mettre d'autre, car je dois bien tester
le premier élément avec le deuxième éléments soit :
tab[i][j] > tab[i][j+1]
peut tu m'aider que je puisse avancer ? car je dois encore régler le problème pour trier les élément des autres colonnes -_- ça vas faire 3 heure que je suis sur mon problème...
le premier élément avec le deuxième éléments soit :
tab[i][j] > tab[i][j+1]
peut tu m'aider que je puisse avancer ? car je dois encore régler le problème pour trier les élément des autres colonnes -_- ça vas faire 3 heure que je suis sur mon problème...
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
24 janv. 2009 à 14:31
24 janv. 2009 à 14:31
Ta boucle tu l'arrêtes à m-1 ;).
D'ailleurs la complexité de ton algorithme est en N² dans tous les cas. Tu peux le rendre meilleur via des petites optimisations : https://fr.wikipedia.org/wiki/Tri_%C3%A0_bulles (tu trouveras l'algorithme, et aussi le code).
D'ailleurs la complexité de ton algorithme est en N² dans tous les cas. Tu peux le rendre meilleur via des petites optimisations : https://fr.wikipedia.org/wiki/Tri_%C3%A0_bulles (tu trouveras l'algorithme, et aussi le code).
mimoonet
Messages postés
9
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
24 janvier 2009
1
24 janv. 2009 à 14:46
24 janv. 2009 à 14:46
Ça fonctionne merci beaucoup ^^
je vais continuer le reste du programme.
je vais continuer le reste du programme.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
24 janv. 2009 à 15:00
24 janv. 2009 à 15:00
C'est normal. Tu fais une comparaison par ligne et non l'ensemble de la matrice.
Tu devrais passer par un tableau simple, sinon cela va compliquer ton algorithme.
Tu devrais passer par un tableau simple, sinon cela va compliquer ton algorithme.
mimoonet
Messages postés
9
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
24 janvier 2009
1
24 janv. 2009 à 15:29
24 janv. 2009 à 15:29
mhhh,
le soucis c'est que je dois trie un tableau sans passer par un autre...
je commence a désespérer.
le soucis c'est que je dois trie un tableau sans passer par un autre...
je commence a désespérer.
mimoonet
Messages postés
9
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
24 janvier 2009
1
24 janv. 2009 à 18:38
24 janv. 2009 à 18:38
ok, je regarderai ca demain, j'ai eut ma dose de C pour ajrd ^^ je passe a l'asm -_- mouarf, j'irai voir plus en détail le lien que tu ma donner, encore merci pour les infos.
mimoonet
Messages postés
9
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
24 janvier 2009
1
24 janv. 2009 à 19:03
24 janv. 2009 à 19:03
J'ai encore été voir le lien que tu ma conseiller, mais j'ai du mal a assimiler les booléen, en n'en a malheureusement pas fait en classe : / ...
holala.
holala.