π
<-
Chat plein-écran
[^]

Le défi de Syracuse

Pour le TI-Basic sur Nspire

Le défi de Syracuse

Message non lude kinkazma » 11 Fév 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 !
Dernière édition par noelnadal le 15 Fév 2020, 14:34, édité 1 fois.
Raison: typo
Avatar de l’utilisateur
kinkazma
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 62.9%
 
Messages: 132
Inscription: 06 Mar 2018, 23:25
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: TS

Re: Le défi de Syracuse

Message non lude chadok » 15 Fév 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...
Avatar de l’utilisateur
chadok
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 32%
 
Messages: 88
Inscription: 10 Nov 2013, 16:03
Localisation: Bretagne
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Le défi de Syracuse

Message non lude chadok » 15 Fév 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: Tout sélectionner
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)
Avatar de l’utilisateur
chadok
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 32%
 
Messages: 88
Inscription: 10 Nov 2013, 16:03
Localisation: Bretagne
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Le défi de Syracuse

Message non lude Dogm » 15 Fév 2020, 20:57

chadok a écrit: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: Tout sélectionner
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 ?
Avatar de l’utilisateur
DogmEcrivain
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 44.3%
 
Messages: 117
Images: 7
Inscription: 14 Nov 2019, 18:53
Localisation: Lyon, France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale Math NSI
GitHub: Tim-ats-d

Re: Le défi de Syracuse

Message non lude chadok » 15 Fév 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 ?
Avatar de l’utilisateur
chadok
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 32%
 
Messages: 88
Inscription: 10 Nov 2013, 16:03
Localisation: Bretagne
Genre: Homme
Calculatrice(s):
MyCalcs profile


Retourner vers Nspire-Basic

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 30 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
2263 utilisateurs:
>2248 invités
>11 membres
>4 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)