mike, du täuscht dich. Wenn min größer max ist, gibt die Funktion eine Zufallszahl zurück
Nicht unbedingt im Sinne des Erfinders, oder?
hallo mad andy,
ich hatte min und max vertauscht.
doch das brachte mir eine exception !
wenn ich min und max so übergebe, wie es die funktion haben will, gibt diese
immer eine 0 zurück.
den iif befehl kenn ich nicht.
sicher auch eines dieser vb6 reste
Edit:
wenn es schon eine klasse sein soll, dann würde ich das etwa so machen.
nochwas:
wie schon angesprochen macht es keinen sinn immer eine neue instanz der random klasse zu erzeugen,
da sonst die gefahr besteht gleiche zahlen zu bekommen.
VB.NET-Quellcode
PublicClass ClassRandom
Private _min AsInteger
Private _max AsInteger
Private r AsNew Random
PublicSubNew(ByVal min AsInteger, ByVal max AsInteger)
_min = min
_max = max
EndSub
''' <summary>Gibt einen zufälligen Integer-Wert zurück.</summary>
''' <remarks>Der Rückgabewert befindet sich zwischen Min und Max, welche
''' Beim Instanzieren angegeben wurden.</remarks>
PublicReadOnlyProperty GetInteger() AsInteger
Get
Return r.Next(_min, _max)
EndGet
EndProperty
''' <summary>Gibt einen Zufälligen Double-Wert zwischen 0.0 und 1.0 zurück.</summary>
Gabs schon lang vor .net
Aber ja, es intspricht einem ?:-If von C/C++, was für kleine Ifs recht praktisch ist. IIF steht übrigens, so weit ich weiß, für Inline IF.
Achso, mein alter VB6 Compiler kennt den befehl nich, der meckert dann rum
Sicher? Ich hab Iif sicher schon in VB6 verwendet.
Hi,
den Befehl gibt es mit 100%iger Sicherheit in VB6 und hat immer 3 Argumente.
MSDN: IIf(expr, truepart, falsepart)
bye ...
LaMa5.
Die Wissenschaft wird nie ein besseres Kommunikationssystem in den Büros erfinden können als die Kaffeepause. (Autor: Earl Wilson, amerik. Schriftsteller) https://www.serviceteam-md.de