π
<-
Chat plein-écran
[^]

Le défi de Syracuse

Pour le TI-Basic sur Nspire

Le défi de Syracuse

Unread postby kinkazma » 11 Feb 2020, 09:27

Dans la conjecture de Syracuse, je vous mets au défi de trouver un nombre dont le temps de vol est supérieur à 400 ! Celui qui trouve en premier prend la première place, cependant si quelqu’un trouve un temps de vol plus long que le précédent : il vole sa place.

Voici le programme pour calculatrice :
archives_voir.php?id=2585235
-> Collatz est la version expéditive,
-> Syracuse est une version plus lente, plutôt pour ordinateur.

La conjecture de Syracuse utilise l’algorithme suivant : Si n est pair, on le divise par 2, sinon on le multiplie par 3 et on ajoute 1.
On recommence jusqu’à obtenir 1.
– Le temps de vol, c’est le temps nécessaire avant d’arriver à 1.

Dans le programme il suffit de rentrer le nombre que l’on souhaite vérifier et le programme nous donne le temps de vol, entre autres.
Cela dit, il permet aussi de s’en remettre au hasard pour essayer de gagner !
Last edited by noelnadal on 15 Feb 2020, 14:34, edited 1 time in total.
Reason: typo
User avatar
kinkazma
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 62.9%
 
Posts: 132
Joined: 06 Mar 2018, 23:25
Gender: Male
Calculator(s):
Class: TS

Re: Le défi de Syracuse

Unread postby chadok » 15 Feb 2020, 14:30

Un certain nombre inférieur à 1.000.000 a un temps de vol de 524 ;)
Bon, j'avoue, j' ai un peu triché, mais il n' en reste pas moins vrai que ce problème est assez fascinant, et excite les neurones des mathématiciens depuis presque un siècle...
User avatar
chadok
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 1.6%
 
Posts: 77
Joined: 10 Nov 2013, 16:03
Location: Bretagne
Gender: Male
Calculator(s):

Re: Le défi de Syracuse

Unread postby chadok » 15 Feb 2020, 19:40

Comme extension à ce sujet, il pourrait être intéressant de comparer les performances des différentes calculatrices en terme de vitesse ? :) Critor a déjà livré quelques programmes lors de ses tests annuels, mais cette conjecture de Syracuse est ludique, et parfaite en ce qui concerne la manipulation d'entiers.
On pourrait déjà afficher les temps de vol records pour les entiers de 2 à 100000. Pour ceux qui veulent s'amuser, ci-dessous mon code Python, testé sur mon PC et sur mon smartphone (désolé, je n' ai pas de calculatrice récente, je n' ai que du vintage :) )
A vos chronomètres ! :)

Code: Select all
def syr(n):
        temps=0
        while n > 1:
                if n % 2 == 0 :
                        n=n/2
                else :
                        n=3*n+1
                temps=temps+1
        return temps
     
recordvol=0
for x in range(2,100000+1):
        syr(x)
        if syr(x)>recordvol :
                print(x,", temps de vol :", syr(x))
                recordvol = syr(x)
User avatar
chadok
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 1.6%
 
Posts: 77
Joined: 10 Nov 2013, 16:03
Location: Bretagne
Gender: Male
Calculator(s):

Online

Re: Le défi de Syracuse

Unread postby Dogm » 15 Feb 2020, 20:57

chadok wrote:Comme extension à ce sujet, il pourrait être intéressant de comparer les performances des différentes calculatrices en terme de vitesse ? :) Critor a déjà livré quelques programmes lors de ses tests annuels, mais cette conjecture de Syracuse est ludique, et parfaite en ce qui concerne la manipulation d'entiers.
On pourrait déjà afficher les temps de vol records pour les entiers de 2 à 100000. Pour ceux qui veulent s'amuser, ci-dessous mon code Python, testé sur mon PC et sur mon smartphone (désolé, je n' ai pas de calculatrice récente, je n' ai que du vintage :) )
A vos chronomètres ! :)

Code: Select all
def syr(n):
        temps=0
        while n > 1:
                if n % 2 == 0 :
                        n=n/2
                else :
                        n=3*n+1
                temps=temps+1
        return temps
     
recordvol=0
for x in range(2,100000+1):
        syr(x)
        if syr(x)>recordvol :
                print(x,", temps de vol :", syr(x))
                recordvol = syr(x)


Pour calculer les temps de vol de 2 jusqu'à 77031, ma NumWorks a mis plus de 12 minutes 33 secondes :) mais elle s'est arrêtée là. :thinking:
Est ce normal ?
Afghanistan Simulator Numworks

36%


Omega does what epsilon't
User avatar
DogmEcrivain
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 62.6%
 
Posts: 93
Images: 7
Joined: 14 Nov 2019, 18:53
Location: Lyon, France
Gender: Male
Calculator(s):
Class: Lycéen 2nde Sciences de l'ingénieur
GitHub: tim_ats_d

Re: Le défi de Syracuse

Unread postby chadok » 15 Feb 2020, 21:03

Oui, c' est normal :) Le nombre suivant 77031 se situe au-delà de 100000 : c' est 106239, avec un temps de vol de 353.
Donc 12 min 33 s, record à battre :#top#:
PS : c' est bien le temps pour couvrir le range de 2 à 100000 ? Tu n' as pas interrompu le test à 77031 ?
User avatar
chadok
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 1.6%
 
Posts: 77
Joined: 10 Nov 2013, 16:03
Location: Bretagne
Gender: Male
Calculator(s):


Return to Nspire-Basic

Who is online

Users browsing this forum: No registered users and 3 guests

-
Search
-
Featured topics
Omega, le fork étendant les capacités de ta NumWorks, même en mode examen !
Comparaisons des meilleurs prix pour acheter sa calculatrice !
12
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety 
-
Stats.
501 utilisateurs:
>490 invités
>5 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)