Re: Python, Turtle et étoiles...

Liste des GroupesRevenir à fs maths 
Sujet : Re: Python, Turtle et étoiles...
De : bayosky (at) *nospam* pasla.invalid (HB)
Groupes : fr.sci.maths
Date : 21. Jul 2022, 08:35:53
Autres entêtes
Organisation : Guest of ProXad - France
Message-ID : <62d8f3ca$0$2999$426a74cc@news.free.fr>
References : 1 2 3 4
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0
Le 21/07/2022 à 07:47, Dominique a écrit :
Le 21/07/2022 à 00:23, Olivier Miakinen a écrit :
Le 21/07/2022 00:01, je répondais à Dominique :
>
Mais on peut faire mieux, et savoir au bout de combien d'itérations on
revient au point de départ pour la première fois. Soit (p/q)×360° l'angle
choisi. Si p et q sont premiers entre eux, alors il faudra exactement q
itérations pour que l'angle soit p×360°, soit 0° modulo 360°.
>
Par ailleurs, pour qu'une rotation « à droite » ne se transforme pas en
rotation à gauche, il suffit de choisir p et q de sorte que 0 < p < q/2.
>
Enfin, si tu veux des polygones étoilés et pas de bêtes polygones
convexes, il suffit de choisir p > 1, donc 2 ≤ p < q/2.
>
Cette formule peut aussi être utilisée pour choisir l'angle en fonction
du nombre d'itérations voulu. Déjà cela impose que q ≥ 5, parce que sinon
il est impossible d'avoir 2 ≤ p < q/2 lorsque q/2 ≤ 2.
>
Reprenons tes exemples. Ta rotation à droite de 216°, c'est (3/5)×360° (ou
(2/5)×360° si tu choisis l'angle le plus petit). Il faut donc 5 itérations.
Quant à ta rotation de 198°, c'est (11/20)×360° ou (9/20)×360°, donc 20
itérations.
>
Avec q=5, le seul p vérifiant 2 ≤ p < 2,5 est p=2.
>
Dans le second cas, q=20, les nombres p vérifiant 2 ≤ p < 10 sont les entiers
de 2 à 9. Parmi ceux-ci, les seuls à être premiers avec 20 sont 3, 7 et 9. Ton
exemple était avec p=9, mais tu peux aussi essayer p=3 et p=7.
>
Je te remercie pour toutes ces explications très intéressantes. J'ai modifié mon code comme suit :
 from turtle import *
speed(0)
q=int(input('Itérations >2 '))
for p in range(2,int(q/2)+1):
     if q==10:
         p=3
     if q/p!=int(q/p):
         break
     break
if q==5 or q==20:
     p=3
if q%6==0:
     p=5
 ang=p/q*360
for x in range (q):
     forward(150)
     right(ang)
 J'échoue systématiquement avec q=6. Je suppose qu'il existera d'autres cas d'échec. Mais passée une vingtaine d'itérations, le résultat devient inintéressant.
 Passe une bonne journée,
 Dominique
 
Bonjour,
Si j'ai bien suivi, il s'agit d'obtenir de beaux polygones réguliers étoilés ...
J'ai commis, il y a fort longtemps, la petite chose qui se trouve là :
  http://bayosky.free.fr/maths/polygones/poly.htm
Plutôt que d'utiliser l'angle de la "pointe" on peut se diriger vers les points prédéfinis sur le cercle de base.
concrètement, cela limite les erreurs qui s'accumulent doucement par des "virages" imparfaits.
S'agissant de "6", il n'existe pas de polygone régulier étoilé à 6 sommets.
Pour qu'une étoile à n sommets existe, il faut qu'au moins un entier inférieur à [n/2] soit premier avec n.
Il me semble que n=6 est le seul cas impossible.
Amicalement,
Hubert.

Date Sujet#  Auteur
21 Jul 22 * Re: Python, Turtle et étoiles...16Olivier Miakinen
21 Jul 22 +* Re: Python, Turtle et étoiles...6Olivier Miakinen
21 Jul 22 i`* Re: Python, Turtle et étoiles...5Dominique
21 Jul 22 i `* Re: Python, Turtle et étoiles...4HB
21 Jul 22 i  `* Re: Python, Turtle et étoiles...3Dominique
21 Jul 22 i   `* Re: Python, Turtle et étoiles...2HB
21 Jul 22 i    `- Re: Python, Turtle et étoiles...1Dominique
8 Aug 22 `* Re: Python, Turtle et étoiles...9Lulu
9 Aug 22  +* Re: Python, Turtle et étoiles...4Dominique
9 Sep 22  i`* Re: Python, Turtle et étoiles...3Marioux Paule
9 Sep 22  i `* Re: Python, Turtle et étoiles...2Olivier Miakinen
9 Sep 22  i  `- Re: Python, Turtle et étoiles...1Marioux Paule
9 Aug 22  +- Re: Python, Turtle et étoiles...1Olivier Miakinen
17 Aug 22  `* Re: Python, Turtle et étoiles...3Richard Hachel
17 Aug 22   `* PPCM des premiers entiers (was: Python, Turtle et étoiles...)2Olivier Miakinen
17 Aug 22    `- Re: PPCM des premiers entiers (was: Python, Turtle et étoiles...)1Richard Hachel

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal