Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.lang.python > #4257

Re: [SOLUTION] Tri de crêpes

From Olivier Miakinen <om+news@miakinen.net>
Newsgroups fr.comp.lang.python
Subject Re: [SOLUTION] Tri de crêpes
Date 2024-12-03 18:57 +0100
Organization There's no cabale
Message-ID <vingq1$1v64$1@cabale.usenet-fr.net> (permalink)
References <vikoqt$3eo5p$1@dont-email.me> <vimqp4$1h59$1@cabale.usenet-fr.net> <vin3d6$1mos$1@cabale.usenet-fr.net> <vindrv$71nh$1@dont-email.me>

Show all headers | View raw


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

Back to fr.comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Les raisons de ma question de ce jour : panne de mémoire avec list et str Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-02 17:55 +0100
  Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-02 22:13 +0100
    Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-03 07:06 +0100
      Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 10:38 +0100
  Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-02 22:48 +0100
    Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-02 23:02 +0100
      Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 10:29 +0100
    Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-03 07:16 +0100
      Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 11:03 +0100
  Tri de crêpes (was: Les raisons de ma question de ce jour : panne de mémoire avec list et str) Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 12:41 +0100
    Re: Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 12:53 +0100
    [SOLUTION] Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 15:08 +0100
      Re: [SOLUTION] Tri de crêpes Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-03 18:07 +0100
        Re: [SOLUTION] Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 18:57 +0100
      Re: [SOLUTION] Tri de crêpes Damien Wyart <damien.wyart@free.fr> - 2024-12-04 09:31 +0100
        Re: [SOLUTION] Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-04 12:16 +0100
          Re: [SOLUTION] Tri de crêpes Damien Wyart <damien.wyart@free.fr> - 2024-12-04 13:09 +0100
            Re: [SOLUTION] Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-05 19:42 +0100
              Signature d'une fonction (was: [SOLUTION] Tri de crêpes) Olivier Miakinen <om+news@miakinen.net> - 2024-12-05 19:56 +0100
                Re: Signature d'une fonction Olivier Miakinen <om+news@miakinen.net> - 2024-12-06 00:34 +0100
      Trouver l'index du plus grand élément dans une liste (was: [SOLUTION] Tri de crêpes) Olivier Miakinen <om+news@miakinen.net> - 2024-12-04 12:24 +0100
      Re: [SOLUTION] Tri de crêpes Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-21 18:22 +0100
      Re: [SOLUTION] Tri de crêpes Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-22 06:41 +0100

csiph-web