Les nombres premiers… (JavaScript Global et par actualisation)
|
05-01-2012, 11:13 AM
Message : #1
|
|||
|
|||
Les nombres premiers… (JavaScript Global et par actualisation)
On va faire un fichier pour déterminer si un entier est premier ou pas.
Le nombre nb sera entré dans le ChampTexte1 On fera afficher : texte1 (si nb est premier) texte2 (si nb n'est pas premier) Les commandes "premier" et "Diviseurs" existent dans le calcul formel de GeoGebra 4.2 mais pas dans GeoGebra 4 Alors, on va faire ça en JavaScript Dans le JavaScript global, on définit une fonction premier de paramètre nb Code : function ggbOnInit() {} Le résultat de cette fonction est un booléen qui vaut : faux si le nombre n'est pas premier true si le nombre est premier En français (en Algorithmique), cela donnerait ça : ------------------------ m := la partie entière de racine carrée de nb Si nb = 1 alors FAUX (1 n'est pas premier) Si nb = 2 alors FAUX (2 n'est pas premier) Si le reste de la division euclidienne de nb par 2 = 0 alors FAUX (les nombres pairs ne sont pas premiers) Pour d = 3 jusqu'à m avec un pas de 2 (car on ne teste plus les nombres pairs) début pour Si le reste de la division euclidienne de nb par d = 0 alors début si FAUX (d est un diviseur de nb) On arrête l'algorithme fin si fin pour VRAI (si on arrive là, c'est qu'on a fait toute la boucle pour sans trouver de diviseurs) On arrête l'algorithme ------------------------ Ensuite, pour afficher soit texte1 soit texte2 : dans le script JavaScript d'actualisation du nombre nb, on écrit : Code : with (ggbApplet){ Tout marche alors bien… sauf si le nombre entré n'est pas entier ou négatif Il faut donc interdire l'entrée d'un nombre non entier ou négatif Nous avons déjà vu cela ici On va créer 2 nombres Code : nb=3 Puis, dans le script JavaScript d'actualisation du nombre nb, on rajoute : Code : ne=Math.floor(nb); Essayez dans le fichier suivant… |
|||