Echte Zufallszahlen generieren

Übersicht BlitzMax, BlitzMax NG Codearchiv & Module

Neue Antwort erstellen

Lord Stweccys

Betreff: Echte Zufallszahlen generieren

BeitragSa, Mai 29, 2010 18:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Diese Funktion berechnet echte Zufallszahlen (siehe Random.org)

Random.org arbeitet (glaub ich) mit Atmosphärengeräuschen

Ich habe eine Funktion (okay insgesamt 2 Funktionen Smile ) geschrieben, die es ermöglichen diese Zufallszahlen von BlitzMax aus runterzuladen und zu verwenden:

RealRands
(start,ende,count) - Gibt count Zufallszahlen als Integer-Array (von start bis ende) zurück
RealRand(start,ende) - Gibt eine Zufallszahl als Integer (von start bis ende) zurück

Vorteil: Cool : Perfekt-echte Zufallszahlen
Nachteil: Evil or Very Mad : Für jeden Funktionsaufruf von RealRand, bzw. RealRands wird eine Internetverbindung benötigt.

Viel SPaß mit dem Code Very Happy :

BlitzMax: [AUSKLAPPEN]

'Randomnumbers.info für BlitzMax

'Benutzung: zufallszahl=RealRand(start,ende)
' zufallszahl[]=RealRands(start,ende,anzahl)
'Beschreibung: Gibt eine/anzahl Zufallszahl/en von start bis ende zurück
' Allerding muss für RealRand/s eine Internetverbindung bestehen

SuperStrict

Function RealRands:Int[](_start:Int,_End:Int,_count:Int)


_count=Max(Min(_count,10000),0)
_start=Max(Min(_start,1000000),-1000000)
_End=Max(Min(_End,1000000),-1000000)

Local stream:TStream=ReadStream("http::www.random.org/integers/?num="+_count+"&min="+_start+"&max="+_End+"&col=1&base=10&format=plain&rnd=new")
If stream=Null Return Null

Local numbers:Int[_count]

For Local i:Int=1 To _count
numbers[i-1]=Int(ReadLine(stream))
Next

CloseStream stream

Return numbers
End Function
Function RealRand:Int(_start:Int,_End:Int)
Return RealRands(_start,_End,1)[0]
End Function

Print RealRand(0,1000)


LOG:

-Slices anstatt Retro
-Umstieg auf random.org
-Jetzt auch mehrere Zufallszahlen sofort möglich
-Normals httpstream wird nun verwendet
-Die von random.org gesetzten Limits können nun nicht mehr überschritten werden
  • Zuletzt bearbeitet von Lord Stweccys am So, Mai 30, 2010 13:22, insgesamt 5-mal bearbeitet
 

FWeinb

ehemals "ich"

BeitragSa, Mai 29, 2010 18:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Wäre es nicht sinnvoll die Anzahl der Zufalleszahlen (Amount) bestimmen zu können und dann ein Array mit den Zahlen zurück zu bekommen? Der Overhead für die eine Zahl ist doch viel zu groß sonst.

Ansonsten könnte man vllt. noch mit Slices arbeiten um sich nicht von BRL.Retro abhängig zu machen.

MfG
ich
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs

Lord Stweccys

BeitragSa, Mai 29, 2010 18:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Thx Very Happy

-So, Slices sind eingebaut (+Bug behoben)
-mehrere Zufallszahlen sind nun erlaubt

Läuft alles rund Very Happy
  • Zuletzt bearbeitet von Lord Stweccys am Sa, Mai 29, 2010 20:35, insgesamt 2-mal bearbeitet

Xeres

Moderator

BeitragSa, Mai 29, 2010 19:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich will ja nicht unken, aber random.org hat sehr viel mehr mögliche Optionen.
Interessant wäre es vielleicht, echte Zufallszahlen ohne Internetverbindung zu generieren (vll. aus Temperaturfühlern?) - nur so als zusätzliche Anregung.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Lord Stweccys

BeitragSa, Mai 29, 2010 19:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, aber es wäre für ein "Glückscomputerspiel" praktischer, denn ich glaube nicht, dass jeder an seinem Computer Sensoren hat. Very Happy

EDIT: Habe mir grade random.org angeschaut. Das ist viel progrogrammiererfreundlicher als randomnumbers.info Very Happy thx @xeres
EDIT2: Auf random.org umgestiegen, weitere Veränderung könnt ihr im ersten Beitrag nachlesen

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Codearchiv & Module

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group