![]() |
Re: Zufälliger Integer-Wert zwischen zwei zahlen
Im Endeffekt wollten dir die ganzen Delphi-Cracks hier nur sagen, dass du mit der Funktion
Delphi-Quellcode:
den Zufallsgenerator praktisch initialisierst und mit der Funktion
randomize;
Delphi-Quellcode:
den Bereich angibst, in dem die Zahl liegen soll .. Weiterhin wird vom Minimum ab gezählt, sprich, wenn du eine Zahl zwischen 100 und 200 haben willst (das sind 100 Zahlen --> bereich = 100) nimmst du folgenden Befehl :
random(bereich)+minimum;
Delphi-Quellcode:
random(100)+101; // ja, eigentlich müsste das Minimum 100 sein, jedoch hat Delphi doch seine Standard-Krankheit dass immer und überall von 0 ab gezählt wird, nicht von 1 ;)
Stimmts Jungs ? :D |
Re: Zufälliger Integer-Wert zwischen zwei zahlen
wie soll das denn gehen mit + minimum?
Sagen wir mal ich habe es so:
Delphi-Quellcode:
So, toll, was ist wenn Random(Maximum) bereits 90 rauskommt? dann wird Minimum(20) dazugerechnet, und dann ist es ÜBER dem Maximum, nämlich 110.... :roll:
procedure irgendwas;
var Minimum, Maximum: integer; Ergebnis: integer; begin Randomize; Minimum := 20; Maximum := 100; Ergebnis := Random(Maximum)+Minimum; end; Zitat:
|
Re: Zufälliger Integer-Wert zwischen zwei zahlen
Zitat:
|
Re: Zufälliger Integer-Wert zwischen zwei zahlen
Ach, hör mal: Die Funktion Random(x) liefert dir einen zufälligen Wert. Dieser Wert ist >=0 und <x.
Wenn du jetzt eine Zahl haben willst, zwischen 80 und 100, dann lässt du dir einfach eine Zufallszahl zwischen 0 und 20 ausgeben und addierst am Ende noch 80 hinzu. |
Re: Zufälliger Integer-Wert zwischen zwei zahlen
Zitat:
Delphi-Quellcode:
macht? :lol:
Random(Succ(High-Low)) + Low;
Wenn du also Random(20) eingibst, was kommt raus? Richtig, Zahlen im Bereich von 0-19, deshalb Succ (Nachfolger) davon plus der untere Wert. |
Re: Zufälliger Integer-Wert zwischen zwei zahlen
Delphi-Quellcode:
funkt nur, wenn "von" kleiner als "bis" ist.
function zahl(von, bis: integer): integer;
begin result:= random(bis - (von + 1)) + von + 1; end; kannst ja noch ne abfrage reinmachen. rarndomize dann halt im onCreate oder so. gruss, iaby |
Re: Zufälliger Integer-Wert zwischen zwei zahlen
Zitat:
Delphi-Quellcode:
function RandomRange(const AFrom, ATo: Integer): Integer;
begin if AFrom > ATo then Result := Random(AFrom - ATo) + ATo else Result := Random(ATo - AFrom) + AFrom; end; |
Re: Zufälliger Integer-Wert zwischen zwei zahlen
@Stevie Ist ja gut, ich wollte es ja nur verständlicher darstellen...
|
Re: Zufälliger Integer-Wert zwischen zwei zahlen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz