AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zufallsgenerator - Bereich festlegen

Ein Thema von Traumzauberbaum · begonnen am 12. Aug 2002 · letzter Beitrag vom 30. Sep 2005
Antwort Antwort
Seite 1 von 3  1 23      
Traumzauberbaum

Registriert seit: 10. Jul 2002
Ort: Hamburch
12 Beiträge
 
#1

Zufallsgenerator - Bereich festlegen

  Alt 12. Aug 2002, 10:46
Mahlzeit

hat jemand nen plan, wie ich dem zufallsgenerator (random) sagen kann, dass der nich von 0 bis sonstwohin generieren soll, sondern dass er bei einem bestimmten wert anfängt, also nich schon bei null?
  Mit Zitat antworten Zitat
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#2
  Alt 12. Aug 2002, 10:55
Einfach den Anfangswert nachher dazu addieren!
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#3
  Alt 12. Aug 2002, 12:44
Das Ganze im Code:

Code:
function Zufallszahl(Von, Bis: Integer): Integer;
begin
  Result := Random(Succ(Bis - Von)) + Von;
end;
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#4
  Alt 12. Aug 2002, 13:52
Als Ergänzung zum Code von sakura:

Die Funktion liefert Zufallszahlen in dem Bereich

[von..bis[

oder

von <= x < bis.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#5
  Alt 12. Aug 2002, 14:36
Zitat von MrSpock:
Als Ergänzung zum Code von sakura:

Die Funktion liefert Zufallszahlen in dem Bereich

[von..bis[

oder

von <= x < bis.
Ich muss Dich enttäuschen. Der Bereich ist

[von..bis]

oder

von <= x <= bis
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#6
  Alt 12. Aug 2002, 17:44
Hallo Sakura,

aber da bin ich doch nicht enttäuscht. Das ist doch super . Da hab ich halt Bullshit (mal gucken, ob dieser Begriff automatisch wegzensiert wird) geschrieben. Und außerdem: was interessiert mich mein Geschwätz von heute morgen .
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Marc_Z

Registriert seit: 18. Aug 2002
Ort: Hückelhoven
1 Beiträge
 
#7

Funktion bei Delphi 6.0

  Alt 18. Aug 2002, 11:44
Hi,

ich habe mal nachgeguckt, ab der Version Delphi 6.0 gibt es eine
Funktion, mit der du den Bereich der Zufallszahlen eingrenzen kannst!
Dafür musst du aber noch die Unit "Math" einbinden!

Hier einmal die Syntax und die Erklärung!

Code:
function RandomRange(const AFrom, ATo: Integer): Integer;
Beschreibung:

RandomRange gibt einen zufälligen Integer-Wert im Bereich von AFrom bis ATo zurück (inklusive). RandomRange funktioniert auch mit negativen Bereichen (wenn AFrom größer als ATo ist).

Um den Zufallszahlengenerator zu initialisieren, müssen Sie vor dem Aufruf von RandomRange die Prozedur Randomize aufrufen oder der Variable RandSeed einen Wert zuweisen.




Gruß Marc
  Mit Zitat antworten Zitat
Benutzerbild von RomanK
RomanK

Registriert seit: 7. Jun 2002
Ort: Kirchheim unter Teck
1.036 Beiträge
 
Delphi 7 Personal
 
#8
  Alt 18. Aug 2002, 11:57
Das geht auch mit Random:
Code:
var
Start,Stop,Zuf:Integer;
begin
Zuf := Random(Stop-Start)+Start;
Sorry bei mir würde nur der letze Post angezeigt
Roman Keller
Krieg ist Gottes Art den Amerikanern Geographie beizubringen!
  Mit Zitat antworten Zitat
Benutzerbild von hm988
hm988

Registriert seit: 20. Dez 2002
132 Beiträge
 
Delphi 7 Personal
 
#9
  Alt 22. Dez 2002, 11:57
Hi,
hab das mit dem Randomize gerade auch ausprobiert, krieg ich auch hin aber wie bringe ich es jetzt fertig dass ich nicht zweimal die selben zahlen bekomme bevor alle oder die meisten zahlen im random schon dran wahren
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#10
  Alt 22. Dez 2002, 12:32
Du darfst Randomize nur ein einziges Mal aufrufen.

Mechanismus: Randomize setzt die Variable RandSeed auf einen Startwert abhängig von der aktuellen Systemzeit. Diese Zeit wird durch einen internen Zähler des Computers alle 18 Millisekunden geändert, dass heisst, solange sich die Zeit, zumindest für den Computer, nicht geändert hat, wird durch Randomize die Variable RandSeed immer wieder auf den gleichen Startwert gesetzt. RandSeed wird zum Ermitteln der Zufallszahl genutzt. Da RandSeed sich aber nicht ändert, durch stetes Reset durch Randomize, bekommst Du mehrmals die gleiche "Zufallszahl".

Kurz: Randomize nur einmalig zum Programmstart aufrufen. Und schon klappts.

[edit]Danke Christian, da war natürlich ein Fehlerchen[/edit]
(Siehe: http://www.delphipraxis.net/viewtopi...asc&highlight=)
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 04:41 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