أكتب برنامج يبحث عن عدد أولى مكون من 100 مليون رقم (ليس العدد مليون هكذا 1000000) لا و إنما العدد مكون من مليون رقم
Quelques explications :Pour des nombres de au plus 10 chiffres et avec un pentium 200 et IE4 la décomposition est quasi instantanée ( pour N4 c'est un peu moins rapide : parfois de l'ordre de la seconde, par exemple pour 216499999), du moins pour les nombres que j'ai essayés ... en 2001, date de la mise en ligne de cette page. Par contre si on dépasse 10 chiffres ca peut "mouliner " un peu si le nombre contient un grand nombre premier : par exemple pour 812345111111 (12 chiffres) IE donne la réponse (23×35319352657) en 2 à 3s et N en ....30s ; pour 812345111111123 (15 chiffres) IE donne la réponse en 4s et N en 50s et pour 812345111111129 (15 chiffres) IE donne la réponse en 40s (inutile de dire que je n'ai pas essayé avec N).
Par curiosité j'ai refais un essai en 2006 avec 240 15=1099511627791 (13 chiffres) qui est premier : IE sur mon pentium 200 met 12 secondes, alors que sur un pentium 740 de 2006 il ne met plus que 3 secondes.
Le fait que N soit si lent (12 à15 fois moins rapide que IE) doit être dû à une façon différente de travailler : avec IE lorsque le programme tourne on n'a plus la main et il ne doit pas y avoir d'échanges entre mémoire centrale et disque dur alors que c'est le contraire avec N.
Notons que IE, en cas de "pédalage", sort au bout de30s une première petite fenêtre qui offre la possibilité d'interrompre le calcul, mais la suivante n'apparaît qu'au bout de 3 mn ; quant à N il n'offre jamais la possibilité d'arrêter le calcul.
La décomposition est réalisée grâce à un petit programme en JavaScript mis dans le head de cette page html et qui s'exécute sur votre pc si.....vous n'avez pas désactivé JavaScript.
L'entier dont vous voulez la décomposition en nombres premiers doit être donné sous forme effective d'entier et pas sous forme d'une quelconque expression et il doit avoir au plus 15 chiffres, du moins sur mon pc où JavaScript encaisse l'entier 99...99 (15 fois le chiffres 9 ) et donne comme décomposition 33×31×37×41×271×2906161 ; avec 16 fois le chiffre 9 ce programme donnerait une décomposition manifestement fausse : 216×516, car il considère que le nombre rentré est 1016 (vrai à 1 près).
La méthode que j'utilise repose sur le fait que tout nombre premier supérieur ou égal à 5 est de la forme 6p 1 ou 6p 5 et donc le programme ne divise pas sytématiquement par tous les entiers impairs : il ne divise que par les entiers de la forme ci-dessus ce qui fait un gain de 33%.
Remarque 1 : je conseille à ceux ayant un besoin impérieux de déterminer la décomposition en facteurs premiers d'un nombre de plusieurs dizaines de chiffres d'aller faire un tour à
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] , ils ne seront pas déçus du voyage (en plus ils auront la décomposition en somme de 3 carrés ou 4 carrés).
Par exemple pour 99....99 (17 fois le chiffre 9) on obtient instantanément 32×2071723×5363222357
La méthode utilisée est en liaison avec les courbes elliptiques : inutile de dire que là, je passe la main....