soso62fr
Messages postés59Date d'inscriptionmardi 28 novembre 2006StatutMembreDernière intervention28 avril 20108 4 nov. 2009 à 12:47
Oui bien sûr, je manquerez pas d'implémenter le "crible quadratique" si je devez un jour calculer les diviseurs d'un nombre (très) important ! =)
Merci Bacterius.
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 4 nov. 2009 à 12:38
Evidemment, si c'est juste pour des nombres de l'ordre d'un millier, c'est inutile.
Mais si un jour tu as besoin de factoriser des grands nombres (factoriser = trouver les facteurs/diviseurs), utilise plutôt ceux dont je t'ai parlé (à moins que t'ai 2 milliards d'années devant toi).
Cordialement, Bacterius !
soso62fr
Messages postés59Date d'inscriptionmardi 28 novembre 2006StatutMembreDernière intervention28 avril 20108 4 nov. 2009 à 12:31
Je ne pense pas que cela soit nécessaire car ce code est conçu dans le but de calculer les diviseurs d'un nombre composé de 3-4 chiffres maximum et pas des centaines ...
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 4 nov. 2009 à 12:23
Tu peux aussi implémenter le crible quadratique ou le crible spécial de corps de nombres. Tu pourras trouver les diviseurs d'un nombre de 100 chiffres en 30 minutes sur un bon PC. Mais pour l'implémenter, bonjour ... :p
Cordialement, Bacterius !
soso62fr
Messages postés59Date d'inscriptionmardi 28 novembre 2006StatutMembreDernière intervention28 avril 20108 2 nov. 2009 à 15:02
Merci circular mais je crois que c'est deja fait, regarde la ligne 28 ;)
circular
Messages postés17Date d'inscriptionvendredi 22 juin 2007StatutMembreDernière intervention27 mars 2010 2 nov. 2009 à 14:40
On peut aller plus vite dans la recherche en allant seulement jusqu'à la racine carrée du nombre. Après, on retrouve les résultats précédents. Par exemple avec le nombre 60 :
8x8 > 60, donc on a besoin d'aller que de 1 à 7.
Par exemple, si on va jusqu'à 10, on trouve 10x6 60, mais on a déjà trouvé cette décomposition à partir de 6, puisque 6x10 60.
4 nov. 2009 à 12:47
Merci Bacterius.
4 nov. 2009 à 12:38
Mais si un jour tu as besoin de factoriser des grands nombres (factoriser = trouver les facteurs/diviseurs), utilise plutôt ceux dont je t'ai parlé (à moins que t'ai 2 milliards d'années devant toi).
Cordialement, Bacterius !
4 nov. 2009 à 12:31
4 nov. 2009 à 12:23
Cordialement, Bacterius !
2 nov. 2009 à 15:02
2 nov. 2009 à 14:40
8x8 > 60, donc on a besoin d'aller que de 1 à 7.
Par exemple, si on va jusqu'à 10, on trouve 10x6 60, mais on a déjà trouvé cette décomposition à partir de 6, puisque 6x10 60.