Enigmes

Forum dédié aux énigmes et à toutes formes de jeux de logique.

Déconnexion

Tu n'es pas identifié sur Prise2tete : s'identifier.

accueil Accueil forum Forum
[+]

Écrire une réponse

Attention : Aucun indice ou demande d'aide concernant les énigmes de Prise2Tete n'est accepté sur le forum ! Rends-toi sur le cercle des sages si tu as besoin d'aide !
Tout nouveau message ou sujet ne respectant pas cette règle sera supprimé, merci.
Rédige ton message
| | | | Upload | Aide
:) :| :( :D :o ;) :/ :P :lol: :mad: :rolleyes: :cool:
Options
Sécurité

Répondez (numériquement) à la petite énigme suivante : 

Un berger a 40 moutons, ils meurent tous sauf 18, combien en reste-t-il ?

Retour

Résumé de la discussion

scarta
19-04-2017 14:03:12

Je me suis intéressé récemment, à titre de curiosité, aux fonctions suivantes:
- s(n) qui à un entier n supérieur à 1 fait correspondre la somme de ses facteurs premiers
- r(n) définie de la manière suivante
  - si s(n) = n, alors r(n) = n
  - sinon r(n) = r(s(n))

Plus simplement, je prends un entier, je calcule la somme de ses facteurs premiers, j'obtiens un autre nombre, et je recommence jusqu'à obtenir un nombre premier.
Ainsi:
- 8 = 2x2x2 ==> j'obtiens 2+2+2 = 6, puis 6 = 2x3 ==> j'obtiens 5
- 57 = 3x19 ==> 22, puis 11x2 ==> j'obtiens 13
etc...

Quelques questions d'analyse pure pour commencer
- montrer que tout nombre > 1 converge
- montrer qu'il n'existe qu'un seul point fixe non premier
- montrer que tout nombre premier > 3 peut être le résultat d'un r(N) avec N composé


Maintenant, la partie à coder.
Le but est d'écrire un algo performant pour calculer les r(n) pour n inférieur à une limite donnée.
Si vous voulez tester le votre, la case réponse valide la somme de tous les r(n) avec 1 < n < 100000000 - à titre d'info le résultat sort en un peu moins de 7 secondes en C et un peu plus de 7 secondes en C#.

Et pour aller encore plus loin, à partir de là, j'aimerais trouver une certaine logique dans la répartition des nombres premiers atteints. 5 et 7 reviennent bien entendu le plus grand nombre de fois, mais je me demande s'il y a une logique derrière. Peut-être que l'un d'entre vous aura un éclair de génie, pour ma part je n'ai pas encore été gâté à ce niveau là smile
Ci dessous les premiers décomptes par résultat (pour la même limite à 100 millions)
5 25824840 fois
7 14949082 fois
11 5772374 fois
13 6445693 fois
17 2965764 fois
19 3592741 fois
23 2193365 fois
29 1196433 fois
31 1505836 fois
37 910047 fois
41 768010 fois
43 1085644 fois
Les quelques observations que j'ai déjà pu faire
- C'est globalement décroissant, mais bon on pouvait s'en douter
- 5 couvre en général une très large partie des résultats
- Quand on a 2 nombres premiers jumeaux, le second est plus atteint que le 1er, mais par pour 5 et 7

Je ne masque pas le topic, je pense que c'est la discussion qui sera plus intéressante que les questions théoriques ou le code. Et mon but est aussi de progresser sur le sujet, donc...

Pied de page des forums

P2T basé sur PunBB
Screenshots par Robothumb

© Copyright 2002–2005 Rickard Andersson

Prise2Tete Forum Statistiques Liste des membres Hall of Fame Contact
© Prise2tete - Site d'énigmes et de réflexion.
Un jeu où seules la réflexion, la logique et la déduction permettent de trouver la solution.

Flux RSS de Prise2Tete Forum Jeux & Prise2Tete Test & Prise2Tete Partenariat et Publicité sur Prise2Tete