[C++]tri par propagation
Résolu
Carnat89
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
futursoa -
futursoa -
Bonjour,
Voila des heures que j'essai de mettre en place un tri par propagation. Mais je n'y arrive pas...J'ai beau retourner le programme dans tous les sens, rien a faire, je ne comprend pas pourquoi cela ne fonctionne pas...
C'est pourquoi je viens vous demander votre aide. Je pense que l'erreure ne dois pas petre monstrueuse mais suffisement annodine pour m'échaper. Voici le code :
for (i=N;i>2;i--)
{
for (j=1;j<i;j++)
{
if (Tab[j]>Tab[j+1])
{
temp=Tab[i];
Tab[i]=Tab[i+1];
Tab[i+1]=temp;
}
}
}
Est ce que qqn vois une solution ? Merci d'avance.
Voila des heures que j'essai de mettre en place un tri par propagation. Mais je n'y arrive pas...J'ai beau retourner le programme dans tous les sens, rien a faire, je ne comprend pas pourquoi cela ne fonctionne pas...
C'est pourquoi je viens vous demander votre aide. Je pense que l'erreure ne dois pas petre monstrueuse mais suffisement annodine pour m'échaper. Voici le code :
for (i=N;i>2;i--)
{
for (j=1;j<i;j++)
{
if (Tab[j]>Tab[j+1])
{
temp=Tab[i];
Tab[i]=Tab[i+1];
Tab[i+1]=temp;
}
}
}
Est ce que qqn vois une solution ? Merci d'avance.
A voir également:
- [C++]tri par propagation
- Excel trier par ordre croissant chiffre - Guide
- Logiciel tri photo - Guide
- Tri turf - Télécharger - Sport
- Triez ce tableau par ordre alphabétique des prénoms. - Forum LibreOffice / OpenOffice
- Le fichier contient une liste de prénoms. triez ce tableau par ordre alphabétique des prénoms. quel mot est formé par les 6 premières lettres de la colonne code ? ✓ - Forum Bureautique
6 réponses
J'ai fini par trouver la solution...c'est encore moi qui m'obstine a faire des boucle FOR alors qu'ici une boucle DO...WHILE est plus logique...enfin pour les interessés :
do
{
for (j=0;j<N-1;j++)
{
if (Tab[j]>Tab[j+1])
{
temp=Tab[j];
Tab[j]=Tab[j+1];
Tab[j+1]=temp;
i=0;
}
}
i++;
}
while (i<N);
do
{
for (j=0;j<N-1;j++)
{
if (Tab[j]>Tab[j+1])
{
temp=Tab[j];
Tab[j]=Tab[j+1];
Tab[j+1]=temp;
i=0;
}
}
i++;
}
while (i<N);
Je croit que.... je prefere ne pas trop m'avancer et dire de bêtises donc je recommande encore ( désolé pour la pub ) lesiteduzero.com ils ont un bon dossier C++ et ils sont plus qualifiés pour t'aider je pense.
Bonne chance
Bonne chance
Merci beaucoup Fhiter 13, je vais aller voire.
Sinon une petite correstion :
for (i=N;i>2;i--)
{
for (j=1;j<i;j++)
{
if (Tab[j]>Tab[j+1])
{
temp=Tab[j];
Tab[j]=Tab[j+1];
Tab[j+1]=temp;
}
}
}
Sinon une petite correstion :
for (i=N;i>2;i--)
{
for (j=1;j<i;j++)
{
if (Tab[j]>Tab[j+1])
{
temp=Tab[j];
Tab[j]=Tab[j+1];
Tab[j+1]=temp;
}
}
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question