[RÉSOLU] Tirage aléatoire de nombres différents

Une difficulté, une précision posez vos questions

Modérateur : WIN32-[GG]

Répondre
xavier
Batcheur occasionnel
Messages : 2
Enregistré le : 15 mai 2018 21:06

[RÉSOLU] Tirage aléatoire de nombres différents

Message par xavier » 15 mai 2018 21:28

Bonjour à tous, j'aurais besoin d'un batch qui tire douze nombres différents
dans la fourchette >= 1 et <=100.
J'ai pas de soucis à le faire en javascript mais en batch je rame complet...
Est-ce réalisable sans trop se prendre la tête ?

D'avance merci.
Modifié en dernier par xavier le 16 mai 2018 06:24, modifié 1 fois.

xavier
Batcheur occasionnel
Messages : 2
Enregistré le : 15 mai 2018 21:06

Re: Tirage aléatoire de nombres différents

Message par xavier » 16 mai 2018 06:21

Eureka !
Si quelqu'un sait comment faire ça plus proprement je suis preneur.

Code : Tout sélectionner

@echo off
setlocal enabledelayedexpansion
set fichier=tmp.txt
set /a compteur=0

:tirer
set /a n=%random% %% 100

if not defined .%n% (
set .%n%=0
set /a compteur+=1
(
echo %n%
)>>%fichier%
)
if not %compteur%==12 goto tirer

for /f "tokens=*" %%a in (%fichier%) do (
set /a n=%%a
if !n!==0 set n=100
if defined tirage (
set tirage=!tirage! !n!
) else (
set tirage=!n!
))

echo %tirage%
(
type nul
)>%fichier%
endlocal
pause
exit

Joe cateline
Batcheur débutant
Messages : 26
Enregistré le : 07 mars 2011 21:48

Re: [RÉSOLU] Tirage aléatoire de nombres différents

Message par Joe cateline » 02 mars 2019 10:40

Salut ! Le miens tiens sur 9 lignes et est sensiblement pareil :

Code : Tout sélectionner

@echo off
set comp=0
:b1
set a=%random%
if %a% GTR 100 goto b1
echo %a% >> "resultats.txt"
set/a comp=%comp%+1
if %comp% LSS 12 goto b1
pause

alexandros
Batcheur occasionnel
Messages : 5
Enregistré le : 21 sept. 2016 07:02

Re: [RÉSOLU] Tirage aléatoire de nombres différents

Message par alexandros » 04 mars 2019 04:12

Joe cateline a écrit :
02 mars 2019 10:40
Salut ! Le miens tiens sur 9 lignes et est sensiblement pareil :

Code : Tout sélectionner

@echo off
set comp=0
:b1
set a=%random%
if %a% GTR 100 goto b1
echo %a% >> "resultats.txt"
set/a comp=%comp%+1
if %comp% LSS 12 goto b1
pause
Très bien joué le déterrage d'un sujet résolu avec une "solution" erronée :D

Répondre