[Allegro] Umgeb.-Var. 'random' mit 'get env random' auslesen?

Heinrich Allers allers at t-online.de
So Dez 28 12:32:11 CET 2008


Liebe(r) Herr Berger und trotz dieser ruhigen Tage des Jahresausklangs noch Mitlesende:

> ...  Von der Umgebungsvariable
> %random% hingegen haben wir gelernt (wenn ich mich recht entsinne), dass
> sie beim Start eines Kommandointerpreters aus a99 heraus quasi konstant
> denselben Wert liefert, das ist nicht pseudo, sondern gar nicht
> zufaellig.

Erinnerung hin, Erinnerung her, und da ich zu faul war, zur Auffrischung der Erinnerung ins 
Listenarchiv zu schauen, habe ich eine kleine Stapeldatei gebaut:

@echo off
if not exist c:\allegro\demo2\zufall-a.txt goto anfang
del c:\allegro\demo2\zufall-a.txt 
:anfang
echo %time%: %random% >>c:\allegro\demo2\zufall-a.txt
goto anfang

(um schneller das Ergebnis sehen zu können, habe ich es ins Datenbankverzeichnis 
geleitet) und in Gang gesetzt (Achtung: Abbruch der Endlosschleife mit <Strg>+c!). 

Die Ergebnisdatei zufall-a.txt sieht (in einem winzigen Auszug) so aus:

11:37:43,99: 28194 
11:37:43,99: 5323 
11:37:43,99: 17441 
11:37:43,99: 29212 
11:37:43,99: 611 
11:37:43,99: 22618 
11:37:44,00: 448 
11:37:44,00: 1179 
11:37:44,00: 15379 
11:37:44,00: 24067 
11:37:44,00: 17877 

Vor dem Leerzeichen die Uhrzeit, dahinter die Zahl - also in Sekundenbruchteilen durchaus 
zufällig aussehende Zahlen en masse ...

###

Anschließend dachte ich: Warum nicht diese Zufallszahlenproduktivität der Stapeldatei in 
einer Flexdatei benutzen, um schließlich in a99 doch noch zu den Zufallszahlen zu 
kommen, die ich mit  'get env random' nicht bekomme, und dachte, daß es folgende 
Flexdatei tun sollte:

var D "zufall.txt"\delete
var D "zufall.bat"\xport f
wri "@echo off" n
wri "echo %random% >" D "zufall.num" n
close x
:anfang
var D "zufall.bat"\dos
var D "zufall.num"\open
if no mes zufall.num gibt's nicht;end
get\ins #ux1\close
var D "zufall.num"\delete
var "+" D "zufall.txt"\xport f
wri #dts ": " #ux1 n\close x
keychk\if yes end\jump anfang


(Abbruch dieser Endlosschleife mit <Esc>!). Der Gedake ist halt der, die Arbeit der 
Zufallszahlengenerierung einer Stapeldatei zu überlassen und deren Ergebnis einfach 
auszulesen.

Was kommt raus, als Ergebnis zufall.txt? Die Enttäuschung ist groß:

...
20081228/11:29:40: 22005
20081228/11:29:40: 22005
20081228/11:29:40: 22005
....
20081228/11:29:41: 22009
20081228/11:29:41: 22009
20081228/11:29:41: 22009
...

Keine Spur von Zufälligkeit! Zu Beginn jeder Sekunde wird 4 (bei anderen Versuchen auch 
3) addiert, und dann bleibt die Zahl eine Sekunde lang konstant ... :-((


Enttäuscht und ratlos grüßt:

Heinrich Allers

allers at t-online.de * http://h-allers.de
Bitácora: http://heinrich-erlo-spa.blogspot.com
Netztagebuch: http://heinrich-erlo-ger.blogspot.com



Mehr Informationen über die Mailingliste Allegro