AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Mängel an der Random-Funktion

Ein Thema von TH3LL · begonnen am 27. Sep 2006 · letzter Beitrag vom 27. Sep 2006
Antwort Antwort
TH3LL

Registriert seit: 25. Jan 2006
22 Beiträge
 
Delphi 6 Enterprise
 
#1

Mängel an der Random-Funktion

  Alt 27. Sep 2006, 11:00
Hallo,
gibt es noch eine andere möglichkeit Zufallszahlen zu erstellen als mit Random?

In meinem Code werden sehr schnell hintereinander viele Zufallszahlen ermittelt zwischen 1 und 6. Nun kann ich tun was ich möchte, in den zufallszahlen ist immer ein Muster erkennbar. Random hängt ja von der Systemzeit ab und selbst randomize sorgt nicht für "echte" Zufallswerte, weil die Zahlen offenbar zu schnell oder zu regelmäßig hintereinander erstellt werden.
Eine verzögerung mit Sleep wie in anderen Themen vorgeschlagen macht mein Programm aber erstens langsamer und zweitens gibt es immernoch erkennbare Muster die nicht viel mit Zufall zu tun haben..

Gibt es noch eine andere Möglichkeit mir "Echte" Zufallswerte zu generieren?

Danke schonmal
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Mängel an der Random-Funktion

  Alt 27. Sep 2006, 11:09
http://www.mathematik.uni-kl.de/~www...algorithmus%22
http://ddi.cs.uni-potsdam.de/HyFISCH...algorithmus%22
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#3

Re: Mängel an der Random-Funktion

  Alt 27. Sep 2006, 11:52
Zitat:
Random hängt ja von der Systemzeit ab
Nein, hängt definitiv nicht davon ab. Random() hängt ausschließlich nur von RandSeed ab. Randomize() berechnet aus dem Systemdatum/zeit einen neuen RandSeed Wert.

Also vermute ich das du Randomize nicht einmalig am Programmstart aufrufst sondern vor jedem Aufruf von Random(), das ist falsch.

Gruß Hagen

PS: mindestens 13529 Beiträge hier in der DP beschäftigen sich mit diesem "Problem".
  Mit Zitat antworten Zitat
TH3LL

Registriert seit: 25. Jan 2006
22 Beiträge
 
Delphi 6 Enterprise
 
#4

Re: Mängel an der Random-Funktion

  Alt 27. Sep 2006, 12:48
Aha!
Da hat mich mein Informatiklehrer doch Glatt falsch informiert

Vielen dank! Jetzt klappt es natürlich
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#5

Re: Mängel an der Random-Funktion

  Alt 27. Sep 2006, 17:31
Zitat von TH3LL:
Aha!
Da hat mich mein Informatiklehrer doch Glatt falsch informiert

Vielen dank! Jetzt klappt es natürlich
Die Hobby-Info-Lehrer mal wieder! Ein seltsames Grueppchen eben!
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Cöster

Registriert seit: 6. Jun 2006
589 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Mängel an der Random-Funktion

  Alt 27. Sep 2006, 19:36
Zitat von Mackhack:
Zitat von TH3LL:
Aha!
Da hat mich mein Informatiklehrer doch Glatt falsch informiert

Vielen dank! Jetzt klappt es natürlich
Die Hobby-Info-Lehrer mal wieder! Ein seltsames Grueppchen eben!
Ich würde eher sagen: Der Durchschnitts-Info-Lehrer. Leider
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#7

Re: Mängel an der Random-Funktion

  Alt 27. Sep 2006, 19:48
Etwas OT: Gibt es eigentlich den Zufall? Ich denke nicht, es gibt einen Algorithmus, der eine Zufallszahl berechnet, also lässt sich diese Zahl nachrechen.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#8

Re: Mängel an der Random-Funktion

  Alt 27. Sep 2006, 20:58
Zitat von s.h.a.r.k:
Etwas OT: Gibt es eigentlich den Zufall? Ich denke nicht, es gibt einen Algorithmus, der eine Zufallszahl berechnet, also lässt sich diese Zahl nachrechen.
Bei den besten Pseudozufallsalgorithmen allerdings nur unter Zuhilfenahme aller Eingabedaten, also ists für Außenstehende Zufall
  Mit Zitat antworten Zitat
Nicolai1234

Registriert seit: 21. Feb 2004
1.008 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Mängel an der Random-Funktion

  Alt 27. Sep 2006, 21:10
Zitat von Dax:
Zitat von s.h.a.r.k:
Etwas OT: Gibt es eigentlich den Zufall? Ich denke nicht, es gibt einen Algorithmus, der eine Zufallszahl berechnet, also lässt sich diese Zahl nachrechen.
Bei den besten Pseudozufallsalgorithmen allerdings nur unter Zuhilfenahme aller Eingabedaten, also ists für Außenstehende Zufall
Ansonsten lässt sich am PC der Zufall noch durch physikalische (oder ist das chemisch ) Vorgänge erzeugen. Beispielsweise über den Zerfall radioaktiver Elemente. Dann aber eben eine hardwareseite Lösung.
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#10

Re: Mängel an der Random-Funktion

  Alt 27. Sep 2006, 21:19
Hallo,
Zitat von Nicolai1605:
Ansonsten lässt sich am PC der Zufall noch durch physikalische (oder ist das chemisch ) Vorgänge erzeugen. Beispielsweise über den Zerfall radioaktiver Elemente. Dann aber eben eine hardwareseite Lösung.
Ob Du dann "echten" Zufall hast, kannst Du aber auch nicht beweisen...

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz