Re: [SOLUTION] Tri de crêpes

Liste des GroupesRevenir à fcl python 
Sujet : Re: [SOLUTION] Tri de crêpes
De : om+news (at) *nospam* miakinen.net (Olivier Miakinen)
Groupes : fr.comp.lang.python
Date : 03. Dec 2024, 18:57:21
Autres entêtes
Organisation : There's no cabale
Message-ID : <vingq1$1v64$1@cabale.usenet-fr.net>
References : 1 2 3 4
User-Agent : Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49.4
Le 03/12/2024 18:07, Dominique a écrit :
Le 03/12/2024 à 15:08, Olivier Miakinen a écrit :
 
Promis, je ne lis pas ta solution :)
 
Merci de l'avoir donnée.

De rien. Note quand même que tu t'étais énormément compliqué la vie en
passant par un unique nombre, transformé en chaîne de caractères, puis
découpé en caractères de '0' à '9' ; utiliser directement un tableau de
nombres de 0 à N-1 (ou de 1 à N, voir plus loin) est beaucoup plus
simple.

Et, oui, pour nous autres humains, utiliser les nombres de 1 à N est
quand même plus naturel que les nombres de 0 à N-1. Pour cela, il suffit
d'appliquer à mon programme précédent les modifs suivantes :
======================================================================
$ diff crepier.py crepier1.py
7c7
< crepes = list(range(0, nb))     # crepes = [0, 1, ..., nb-1]
---
crepes = list(range(1, nb+1))   # crepes = [1, 2, ..., nb]
14,15c14,15
<     # Les dernières crêpes sont dans l'ordre si crepes[i] == i
<     while desordre > 0 and crepes[desordre - 1] == desordre - 1:
---
    # Les dernières crêpes sont dans l'ordre si crepes[i] == i+1
    while desordre > 0 and crepes[desordre - 1] == desordre:
======================================================================

Et voici deux exemples de lancement du programme modifié :
======================================================================
$ ./crepier1.py
Nombre de crêpes : 6
Les crêpes sont dans l'ordre suivant : [1, 5, 3, 2, 6, 4] (0 ok)
On retourne 5 crêpes.
Les crêpes sont dans l'ordre suivant : [6, 2, 3, 5, 1, 4] (0 ok)
On retourne 6 crêpes.
Les crêpes sont dans l'ordre suivant : [4, 1, 5, 3, 2, 6] (1 ok)
On retourne 3 crêpes.
Les crêpes sont dans l'ordre suivant : [5, 1, 4, 3, 2, 6] (1 ok)
On retourne 5 crêpes.
Les crêpes sont dans l'ordre suivant : [2, 3, 4, 1, 5, 6] (2 ok)
On retourne 3 crêpes.
Les crêpes sont dans l'ordre suivant : [4, 3, 2, 1, 5, 6] (2 ok)
On retourne 4 crêpes.
Les crêpes sont dans l'ordre suivant : [1, 2, 3, 4, 5, 6] (6 ok)
Les crêpes sont bien ordonnées.
======================================================================
$ ./crepier1.py
Nombre de crêpes : 10
Les crêpes sont dans l'ordre suivant : [3, 10, 8, 9, 2, 5, 4, 6, 7, 1] (0 ok)
On retourne 2 crêpes.
Les crêpes sont dans l'ordre suivant : [10, 3, 8, 9, 2, 5, 4, 6, 7, 1] (0 ok)
On retourne 10 crêpes.
Les crêpes sont dans l'ordre suivant : [1, 7, 6, 4, 5, 2, 9, 8, 3, 10] (1 ok)
On retourne 7 crêpes.
Les crêpes sont dans l'ordre suivant : [9, 2, 5, 4, 6, 7, 1, 8, 3, 10] (1 ok)
On retourne 9 crêpes.
Les crêpes sont dans l'ordre suivant : [3, 8, 1, 7, 6, 4, 5, 2, 9, 10] (2 ok)
On retourne 2 crêpes.
Les crêpes sont dans l'ordre suivant : [8, 3, 1, 7, 6, 4, 5, 2, 9, 10] (2 ok)
On retourne 8 crêpes.
Les crêpes sont dans l'ordre suivant : [2, 5, 4, 6, 7, 1, 3, 8, 9, 10] (3 ok)
On retourne 5 crêpes.
Les crêpes sont dans l'ordre suivant : [7, 6, 4, 5, 2, 1, 3, 8, 9, 10] (3 ok)
On retourne 7 crêpes.
Les crêpes sont dans l'ordre suivant : [3, 1, 2, 5, 4, 6, 7, 8, 9, 10] (5 ok)
On retourne 4 crêpes.
Les crêpes sont dans l'ordre suivant : [5, 2, 1, 3, 4, 6, 7, 8, 9, 10] (5 ok)
On retourne 5 crêpes.
Les crêpes sont dans l'ordre suivant : [4, 3, 1, 2, 5, 6, 7, 8, 9, 10] (6 ok)
On retourne 4 crêpes.
Les crêpes sont dans l'ordre suivant : [2, 1, 3, 4, 5, 6, 7, 8, 9, 10] (8 ok)
On retourne 2 crêpes.
Les crêpes sont dans l'ordre suivant : [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] (10 ok)
Les crêpes sont bien ordonnées.
======================================================================

--
Olivier Miakinen

Date Sujet#  Auteur
2 Dec 24 * Les raisons de ma question de ce jour : panne de mémoire avec list et str24Dominique
2 Dec 24 +* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str3Olivier Miakinen
3 Dec 24 i`* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str2Dominique
3 Dec 24 i `- Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str1Olivier Miakinen
2 Dec 24 +* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str5Olivier Miakinen
2 Dec 24 i+* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str2Olivier Miakinen
3 Dec 24 ii`- Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str1Olivier Miakinen
3 Dec 24 i`* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str2Dominique
3 Dec 24 i `- Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str1Olivier Miakinen
3 Dec 24 `* Tri de crêpes (was: Les raisons de ma question de ce jour : panne de mémoire avec list et str)15Olivier Miakinen
3 Dec 24  +- Re: Tri de crêpes1Olivier Miakinen
3 Dec 24  `* [SOLUTION] Tri de crêpes13Olivier Miakinen
3 Dec 24   +* Re: [SOLUTION] Tri de crêpes2Dominique
3 Dec 24   i`- Re: [SOLUTION] Tri de crêpes1Olivier Miakinen
4 Dec 24   +* Re: [SOLUTION] Tri de crêpes7Damien Wyart
4 Dec 24   i`* Re: [SOLUTION] Tri de crêpes6Olivier Miakinen
4 Dec 24   i `* Re: [SOLUTION] Tri de crêpes5Damien Wyart
5 Dec 24   i  `* Re: [SOLUTION] Tri de crêpes4Olivier Miakinen
5 Dec 24   i   `* Signature d'une fonction (was: [SOLUTION] Tri de crêpes)3Olivier Miakinen
5 Dec 24   i    `* Re: Signature d'une fonction (was: [SOLUTION] Tri de crêpes)2Stefan Ram
6 Dec 24   i     `- Re: Signature d'une fonction1Olivier Miakinen
4 Dec 24   +- Trouver l'index du plus grand élément dans une liste (was: [SOLUTION] Tri de crêpes)1Olivier Miakinen
21 Dec 24   +- Re: [SOLUTION] Tri de crêpes1Dominique
22 Dec 24   `- Re: [SOLUTION] Tri de crêpes1Dominique

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal