A quoi sert ce petit programme?

reading -  
Infaustus Messages postés 256 Statut Membre -
Bonjour,
Je comprend pas a quoi sert ce programme pouvez vous m'aider merci

F(A){ // A[0..(n-1)] contient une permutation de {1,2,...,n}
int i,j;
for ( i == n-1 ; i > 0 && (A[i-1] > A[i]) ; i--){
// empty statement
}
if ( i == 0 )
return 0;
for ( j == i+1 ; j < n && (A[i-1] < A[j]) ; j++){
// empty statement
}
permute( A[i-1], A[j-1] ); // permutte les 2 valeurs
reverse ( A[i..n-1] ); // renverse le sous-tablea A[i...(n-1)] cad A[i] devient A[n-1]; A[i+1] devient A[n-2] etc...
return 1;
}
A voir également:

4 réponses

reading
 
je n'ai vire aucune ligne de code
0
Utilisateur anonyme
 
ah ? donc tu ne fais rien dans tes boucles for ..enfin ce n'est pas un pb...
j'avais pris le "etc..." pour un retour à la ligne sans penser qu'il s'agissait de la fin du commentaire

bon, sinon comprendre ce que fait un code, ce n'est pas en l'admirant que ça nous tombe du ciel ... déroule-le par toi-même...

mais comme je m'emmerde je te le fais :p et en corrigeant tes "==" en "=" dans tes for()

la première for tu parcours A de la fin au début tant que A[i-1] > A[i], donc si ta liste A est triée dans l'ordre croissant, tu te retrouveras avec i = 0 à la sortie
si i==0 ... ça quitte ta fonction en renvoyant 0
la 2ème boucle for() me semble inutile car tu parcours A de i à la fin tant que A[i-1] < A[j], mais puisque tu viens de parcourir en descendant A dans l'autre sens je ne vois pas l'intérêt de cette boucle (en même temps j'ai pas testé le bout de code, je déroule moi-même..)
les 2 dernières lignes de code sont commentées ...
-1
Utilisateur anonyme
 
Tu demandes ce que fais le programme alors que tu te permets de virer des lignes de codes ... ça n'a pas de sens ...
c'est comme si je te disais de me traduire en anglais : "la maison ... etc ... jaune."

au passage une boucle for ne commence pas par une condition ("==" : test d'égalité, "=" : affectation de valeur)
-1
Infaustus Messages postés 256 Statut Membre 16
 
Bonjour, quel est ce langage ?
-1
Utilisateur anonyme
 
Je n'avais pas fait attention qu'il ne l'avait pas dit... mais ce n'est pas nécessaire.
Une boucle for() ... dans tous les langages c'est la même
-1
Infaustus Messages postés 256 Statut Membre 16
 
Vu que je commence tout juste la programmation, c'est pour ça que je demande
-1