[batch] calculateur de nombre premier

Fermé
jam-jam68140 Messages postés 18 Date d'inscription mercredi 2 novembre 2011 Statut Membre Dernière intervention 27 novembre 2011 - 27 nov. 2011 à 18:18
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 28 nov. 2011 à 10:55
Bonjour, je suis en train de créer un calculateur de nombre premier (nombre divisible que par un et eux meme). j'arrive a lui faire dire quelle nombre ne sont pas premier et moi je voudrai qu'il me dise quelle nombre EST premier. voici mon code:

@echo off
setlocal enableDelayedExpansion
set/p nbr_min=Choisi ton nombre minimum
set/p nbr_max=Choisi ton nombre maximum
cls
for /l %%a in (%nbr_min%,1,%nbr_max%) do (
for /l %%b in (1,1,%%a) do (
set valeur[%%a]=0
set/a nbr[%%a]=%%a/%%b
set/a reste_nbr[%%a]=%%a%%%%b
if not %%b==%%a set/a valeur[%%a]=!valeur[%%a]!+1
if not %%b==1 set/a valeur[%%a]=!valeur[%%a]!+1
if !reste_nbr[%%a]!==0 set/a valeur[%%a]=!valeur[%%a]!+1
if !valeur[%%a]!==3 echo %%a n'est pas un nombre premier & echo.
)
)
pause>nul

merci de votre aide
A voir également:

3 réponses

lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
27 nov. 2011 à 20:29
Bonjour,
Je ne connais pas le dos mais la réponse me parais simple..
if !valeur[%%a]!<>3 echo %%a est un nombre premier & echo.
Pour la syntaxe tu adapte.
A+
1
jam-jam68140 Messages postés 18 Date d'inscription mercredi 2 novembre 2011 Statut Membre Dernière intervention 27 novembre 2011 9
27 nov. 2011 à 20:48
heu... pour la formule que t'a noté, les " <> " sa veut dire n'est pas egal a? parce que si c'est sa sa marche pas! c'est logique ( si on passe un peu ( 20 min pour moi! ) de temp a réfléchire dessus! ) merci quand meme! :)
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
28 nov. 2011 à 10:55
La formule que tu emploi, elle veux bien dire .. Si égale à 3 c'est pas un nombre premier ?
Et si oui, logiquement, l'inverse est aussi vrai ? si <> (pas égale) à 3 c'est un nombre premier ?
A+
0