Calculer les nombres premiers

0/5 (3 avis)

Snippet vu 7 825 fois - Téléchargée 13 fois

Contenu du snippet

Ce script permet de calculer les nombres premiers(divisibles par rien)
en effectuant un test: essayer de diviser un nombre par tous les autres nombres inférieurs.

(i % k == 0) retourne true si i est divisible par k


var i = 2;
var k = 2;
var premiers = [];// contient les nb premiers
var max = prompt("Maximum:");
var ok = true;
while(i < max) {// tester chaque nb
    ok = true;// remettre ok à true
    k = 2;// remettre k à 2
    while(k < i && ok) {// tester si i est divisible par k
        if(i % k == 0)// si i divisé par k est entier
            ok = false;// i n'est pas premier
        k ++;// incrémenter k
    }
    if(ok)// si i est premier...
        premiers.push(i);// on rajoute i dans le tableau
    i ++;
}
alert(premiers);// afficher les nb premiers

A voir également

Ajouter un commentaire Commentaires
cs_janhsh Messages postés 31 Date d'inscription lundi 6 novembre 2000 Statut Membre Dernière intervention 24 janvier 2015
24 janv. 2015 à 16:35
C'est la plus mauvaise méthode.
elle est O(n!)
KX Messages postés 16636 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 2 décembre 2022 124 > cs_janhsh Messages postés 31 Date d'inscription lundi 6 novembre 2000 Statut Membre Dernière intervention 24 janvier 2015
24 janv. 2015 à 20:01
@cs_janhsh: "elle est O(n!)"
Faux ! Ainsi qu'ici. Cette méthode est quadratique : en O(n²) donc.
Soit plus constructif dans tes commentaires... ou abstiens toi !

@hautparleur: 2 est premier, tu devrais le rajouter à tes résultats.
hautparleur Messages postés 213 Date d'inscription mercredi 9 janvier 2013 Statut Membre Dernière intervention 13 mai 2016 > KX Messages postés 16636 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 2 décembre 2022
1 févr. 2015 à 11:01
oui merci.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.