petit programme de tri en c

petit programme de tri en c - C - Programmation

Marsh Posté le 17-11-2010 à 14:04:07    

bonjour  
 
je débute en c et je voudrais savoir pourquoi le programme que j'ai écrit ne fonctionne pas..
 
 
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
 
    int t[15]={6,5,4,3,2,1} ;
int i ;
int temp ;
 
    int tab_en_ordre= 0 ;
    int taille = 6;
    while(tab_en_ordre=0)
    {
        tab_en_ordre = 1 ;
        for( i=0 ; i < taille-1 ; i++)
        {
            if(t[i] > t[i+1])
            { temp = t[i] ;
              t[i]=t[i+1] ;
              t[i+1]= temp ;
 
                tab_en_ordre = 0;
            }
        }
        taille--;
 
}
for (i=0;i<6;i++)
printf("%d",t[i]);
}
 
 
 
merci de m'aider si possible

Reply

Marsh Posté le 17-11-2010 à 14:04:07   

Reply

Marsh Posté le 17-11-2010 à 14:25:16    

Parce que l'algorithme est faux. Cherche un algo de tri de tableau et utilise le.
 
De plus : int t[15]={6,5,4,3,2,1} ; n'est pas top...


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 17-11-2010 à 14:26:30    

Ne pas confondre = et ==   ;)  

Reply

Marsh Posté le 17-11-2010 à 14:30:54    

je m'étais basé sur la ce code donné en c++ sur le site du zéro et j'ai essayé de l'adapter au c
 
void tri_bulles(vector<int>& tab)
{
    bool tab_en_ordre = false;
    int taille = tab.size();
    while(!tab_en_ordre)
    {
        tab_en_ordre = true;
        for(int i=0 ; i < taille-1 ; i++)
        {
            if(tab[i] > tab[i+1])
            {
                swap(tab[i],tab[i+1]);
                tab_en_ordre = false;
            }
        }
        taille--;
    }
}
 
 
oui je me suis trompé dans les changements à faire?
 

Reply

Marsh Posté le 17-11-2010 à 14:32:37    

a merci olivthill du coup ca marche. quel con, ca fait une heure que je bloque.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed