Valeurs croissantes dans un tableau
Haddix
-
Haddix -
Haddix -
Bonjour,
Je suis en train de faire un petit programme en C avec des tableaux. J'initialise mon tableau avec des valeurs aléatoires, je l'affiche, et ensuite je voudrai modifier mon programme avec des boucles pour que ça me retourne les mêmes valeurs que l'ancien tableau, mais cette fois-ci dans l'ordre croissant. Comment faire?
J'ai essayé avec des boucles for, des if, mais ça marche tjs pas.
Merci de votre aide!
Je suis en train de faire un petit programme en C avec des tableaux. J'initialise mon tableau avec des valeurs aléatoires, je l'affiche, et ensuite je voudrai modifier mon programme avec des boucles pour que ça me retourne les mêmes valeurs que l'ancien tableau, mais cette fois-ci dans l'ordre croissant. Comment faire?
J'ai essayé avec des boucles for, des if, mais ça marche tjs pas.
Merci de votre aide!
Configuration: Windows Vista Internet Explorer 7.0
2 réponses
-
Salut,
Poste déjà le code que tu as fait.
Si t'y arrives pas, tu peux décrire l'algo si tu veux.
Si tu sais pas, tu peux voir du côté du tri à bulles ou tri sélectif sur google ou encore tri rapide.
Cdlt-
#include <iostream>
#include <time.h>
#include <stdlib.h>
using namespace std;
int main(int argc, char ** argv)
{
const int nb=10;
int T[nb];
srand(time(0));
for(int i=0;i<nb;i++){ // Code qui initialise le tableau avec des valeurs aléatoires
T[i]=rand()%10+1;}
for(int i=0;i<nb;i++){//Code qui affiche
cout<<"T["<<i<<"]"<<" = "<<T[i]<<endl;}
cout<<"Apres modification :"<<endl;
for(int i=0;i<nb;i++){//code qui soi-disant modifie
do{
if(T[i+1]<T[i]){
int a = T[i];
T[i]=T[i+1];
T[i+1]=a;}}
while(T[i+1]<T[i]);}
for(int i=0;i<nb;i++){ //Code qui affiche le nouveau tableau
cout<<"T["<<i<<"]"<<" = "<<T[i]<<endl;}
return 0;
}
-
-
Salut,
Ton algorithme n'est pas bon.
Je te montre une implémentation du trie à bulle.#include <iostream> #include <time.h> using namespace std; int main(int argc, char ** argv) { const int nb=10; int T[nb]; srand(time(0)); for(int i=0;i<nb;i++){ // Code qui initialise le tableau avec des valeurs aléatoires T[i]=rand()%10+1;} for(int i=0;i<nb;i++){//Code qui affiche cout<<"T["<<i<<"]"<<" = "<<T[i]<<endl;} cout<<"Apres modification :"<<endl; int tmp; bool enCours=false; for(int i=0;i<nb && !enCours;i++){//code qui soi-disant modifie enCours=true; for(int j=1;j<nb-i;j++){ if(T[j]<T[j-1]){ tmp = T[j-1]; T[j-1]=T[j]; T[j]=tmp; enCours=false; } } } for(int i=0;i<nb;i++){ //Code qui affiche le nouveau tableau cout<<"T["<<i<<"]"<<" = "<<T[i]<<endl;} return 0; } 23,19 Tout
Cdlt