Hi,
Achja, so hieß das.
Wieder am Beispiel von TShiftState (oben erwähnt):
type TShiftState = set of (ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble);
Das sagt die Delphi- Hilfe dazu. Sowas könntest du dir doch dann auch mit deinen Zahlen machen. Prüfen kannstes dann wie oben beschrieben.
Allerdings... was ist wenn eine Zahl mehrmals da ist?
Dann bräuchte man von jeder Zahl 6 durchnummerierte Elemente in dieser Struktur.
Also z.B. fuenf1, fuenf2, fuenf3, fuenf4, fuenf5 und fuenf6.
Wenn du dann deine Zahlen ermittelt hast machst du diese dann von 1 bis 6 voll.
Also wenn z.B. der dritte und der fünfte Würfel ne Zwei zeigen, dann musst du zwei1 und zwei2 in das set schreiben.
Dementsprechend müsste dann die Prüfung auch etwas abgewandelt werden...
In ein Set schreiben kannst du (wenn ich mich nicht irre) so:
Delphi-Quellcode:
//Am Beispiel der Buttons von Messagedlg
//Erstmal die Deklaration des Sets
type
TMsgDlgBtn = (mbNone, mbOk, mbCancel, mbYes, mbNo, mbAbort, mbRetry, mbIgnore);
TMsgDlgButtons = set of TMsgDlgBtn;
//so, jetz das Set "vollmachen"
procedure SchreibZahlenInSet;
var
sett: TMsgDlgButtons;
begin
//am Beispiel mit den zwei Zweien oben; und nochn paar andere Zahlen rein
sett:= [zwei1, zwei2, eins1, drei1, drei2, fuenf1];
//Gucken ob ne 6 im Set is
if (sechs1 in sett) then
showmessage('juhu')
else
showmessage('Gerade erst das Set gesetzt und jetz nach ner 6 suchen?! Tses...');
end;
Bin mir nich ganz sicher ob es so richtig ist, aber so hab ichs in Erinnerung.
Und auf diese Weise musst du halt dein Set nach dem Generieren der Zufallszahlen mit Werten füllen, und dann später auf Zahlen abfragen. Das is ja eigentlich nur Schreibarbeit.
Bis dann,
S - tefano