Tester nombres premiers

Vous pouvez ...

... ou encore ...

Techniques p5Visuel employées
 création d'objets web
 
propriétés d'objets web
• fonction actions en boucle

Description de l'exemple

C'est une chose que de savoir définir ce qu'est un nombre premier, et une autre que de pouvoir écrire un programme qui peut vérifier si un nombre donné n est premier ou pas. En théorie, il suffit de tester tous les entiers entre 1 et le nombre n en question pour voir combien combien de diviseurs de n on va trouver : notre nombre n sera premier si et seulement si le nombre de diviseurs de n est exactement deux.

Mais on se rend vite compte qu'il devient long de tester si k divise n pour tous les k entre 1 et n. On peut alors se demander s'il est vraiment nécessaire de tester tous les nombres k entre 1 et n. Le programme ci-dessus apporte une réponse possible...

Notez que la taille des entiers acceptés par  p5Visuel est de 53 chiffres binaires (soit environ 16 chiffres décimaux) : mais le temps pris pour tester la primalité de si grands nombres peut être prohibitif, à moins qu'ils possèdent de petits facteurs premiers...
Et si vous essayez de donner un nombre avec plus de 16 décimales, il sera arrondi et converti sous forme exponentielle : les calculs de notre petit programme cesseront alors d'être fiables.