Nbr premier
hajar512
-
buzus -
buzus -
slt à tous
svp jai pas trouvé la solution de cet algo:
saisir un nombre et savoir s'il est un nombre premier ou non
merci
svp jai pas trouvé la solution de cet algo:
saisir un nombre et savoir s'il est un nombre premier ou non
merci
5 réponses
-
bah, c'est facile, il me semble
(mes souvenirs d'algo étant un peu vieux, je te le fais en francais)
tu fais une boucle de 2 à x ou x est ton nombre
tu fais un modulo de ton nombre par x, si le résultat est 0, tu met une variable de sortie à 1 (ou tu break, mais c'est mal de break)
tant que la variable de sortie est à 0 et que x est inférieur à ton nombre, tu boucle
le modulo, c'est l'opération qui donne le reste de la division euclidienne, si tu sais pas le faire, tu jongle avec division reele et division entiere (euclidienne) -
Bonjour,
pour voir si le nombre "B" est premier, il faut créer une variable entière "A" que tu initialise à 2.
tu utilises une fonction modulo ou reste division euclidienne. (reste division euclidienne = modulo de B par A)
Si le résultat est égale à zéro c'est que ton nombre n'est pas premier.
Si le résultat est différent de zéro c'est que ton nombre n'est pas divisible par A.
Incrémente A tant qu'il soit inférieur ou égale à B/2
Si A supérieur à B/2 alors ton nombre est premier.
A+ -
effectivement, j'allais ou bout, mais y'avais pas besoin...
une solution sans le modulo.. je comprends l'intéret pédagogique, mais cela reviendra toujours à la même chose
autant demander tout de suite l'algo du modulo, ça revient au même -
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Si tu veux pas utiliser le modulo tu peux créer ta fonction modulo.
Soit A ton nombre en entrer de fonction et B ton index que tu incrémentes et initialiser à 2.
r=réel
i=integer
Pour cela : tu divises rA par rB
tu obtiens rC
tu convertie rC en entier que tu écris dans iD
tu fais iD x iB = iE
ensuite tu fais : iA - iE = iR (reste de ta division euclidienne)
dans tout ca il te faut jongler entre réel et integer.
A+