Python Trouver Les Facteurs Premiers

Deux partie de la question...

1) en Essayant de déterminer le plus grand facteur premier de 600851475143, trouvé ce programme en ligne qui semble fonctionner, le problème est que je vais avoir un moment difficile essayer de comprendre comment il fonctionne exactement (je comprends les bases de ce que le programme fait)...aussi, si vous pourrait jeter quelque lumière sur la méthode, vous savez peut-être de trouver le premier (peut-être sans le tester chaque numéro) et comment vous la méthode fonctionne.

Le code que j'ai trouvé en ligne pour le premier facteur de

n = 600851475143
i = 2
while i * i < n:
     while n % i == 0:
         n = n / i
     i = i + 1

print (n)

#takes about ~0.01secs

2) Pourquoi le code est beaucoup plus rapide que ce code (le code est juste pour tester la vitesse et n'a pas d'autre but réel que cela)

i = 1
while i < 100:
    i += 1
#takes about ~3secs
  • vous dites que ce dernier prend 3 secondes pour effectuer une itération de 1 à 100?
  • im aussi surpris que vous
  • 2ème on prend 15.3 us sur mon système.
  • comment mesurez-vous le temps?
  • en utilisant le module avant et après le code
  • Comment avez-vous trouver le temps nécessaire pour l'exécution du code? À l'aide de timeit.Minuterie pour 1000 fois: 0.8454189409967512 pour les anciens de la fonction 0.011901747959200293 pour plus tard (seulement i+=1)
  • nous = micro-secondes?
  • se sentait-il comme il a fallu 3 secondes pour s'exécuter?
  • avant j'ai utilisé le module, ça a pris au moins 2-3 secondes, mais quand je mets juste une impression('démarrer'...'done') avant et après, il le fait en une fraction de seconde de toute façon, pourriez-vous s'il vous plaît répondre à la première partie de la question
  • Pour les nombres premiers générateur de look here
  • voici l'article de wikipédia sur les tests de primalité en.wikipedia.org/wiki/Primality_test
  • Très questions connexes: stackoverflow.com/questions/14138053/..., stackoverflow.com/questions/14618677/..., stackoverflow.com/questions/13503320/euler-project-3-in-python, stackoverflow.com/questions/12999706/...
  • Projet Euler, Problème 3?
  • Connexes: stackoverflow.com/questions/28248638/...
  • Salut! Je voulais vous demander si vous pouvez me dire comment obtenir tous les facteurs premiers?

InformationsquelleAutor francium | 2013-03-11