File tree Expand file tree Collapse file tree 1 file changed +14
-3
lines changed
Expand file tree Collapse file tree 1 file changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -783,12 +783,23 @@ Alors que :
783783 : (Entier@ 0 1000)
784784 -> 422 # Cette valeur dépendra du moment où la commande `Initialiser@`
785785 # aura été exécutée, au moins à la milliseconde près.
786+
787+ **Utilisation avancée** : en passant une valeur à `Initialiser@` comprise entre
788+ 0 (inclus) et 2 puissance 32 (exclus), on initialise l’état du générateur à
789+ cette valeur.
786790" )
787791(put 'Initialiser@ 'text " Commande `Initialiser@`." )
788- (de Initialiser@ ()
789- # Avec EmuLisp, seed ne supporte que les entiers 32 bits signés.
790- (seed (- (% (+ (time) (usec)) (** 2 32 )) (** 2 31 )))
792+ (de Initialiser@ (x)
793+ (let 2 ^32 (** 2 32 )
794+ (ifn x (setq !etat@ (% (+ (time) (usec)) 2 ^32 ))
795+ (if (or (lt0 (- x 0 )) (le0 (- 2 ^32 x)))
796+ (quit (pack " Initialiser@ n’accepte que des valeurs entre "
797+ " 0 (inclus) et 2 puissance 32 (exclus)." ) x)
798+ (setq !etat@ x)
799+ )
800+ )
791801 Rien)
802+ )
792803(put 'Entier@ 'doc
793804" Retourne un nombre entier pseudo-aléatoire dans [`min`;`max`] (les deux
794805paramètres entiers).
You can’t perform that action at this time.
0 commit comments