Calculer les nombres premiers

0/5 (3 avis)

Snippet vu 8 616 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 16722 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 septembre 2023 126 > 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 16722 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 septembre 2023
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.