Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Mit Zufallsteuerung aus einem Memo einige Texte ausgeben (https://www.delphipraxis.net/92744-mit-zufallsteuerung-aus-einem-memo-einige-texte-ausgeben.html)

LingNeu 25. Mai 2007 09:20


Mit Zufallsteuerung aus einem Memo einige Texte ausgeben
 
Hallo Delphifreunde,
ich möchte ein Glücksspiel programmieren.
Da habe ich einige Arrayelemente mit folgendem Inhalt

a[0] := 'Kopfhörer';
a[1] := 'Puppe';
a[2] := 'Gummibärchen';
a[3] := 'iPod';
a[4] := 'Reise';
a[5] := 'Brotzeit';
a[6] := 'Spiel1';
a[7] := 'Spiel2';
a[8] := 'Musik-CD'; //usw

Jetzt möchte ich durch einen Zufall aus diesem Text einige "Gewinne" ziehen.
Wenn ich jetzt 3 Gewinne möchte, sollen aus dem Array 3 beliebige Gewinne gezogen werden.
Ich bin noch Newbie und hab noch keinen Peiler wie man sowas hinbekommt.
Wenn ich jetzt eine Schleife mache, dann kann es passieren, das der gleiche Gewinn nochmals kommt.
Vielleicht hat jemand von Euch eine Anregung oder Tipp.
Wäre echt dankbar
ciao
LingNeu

Codewalker 25. Mai 2007 09:54

Re: Mit Zufallsteuerung aus einem Memo einige Texte ausgeben
 
Merke dir doch in einem zweiten Array, welche Preise schon gezogen worden sind. Immer wenn du dann einen Preis ziehst, wiederholst du das so lange, bis du entweder einen neuen Preis ziehst, der noch nicht dabei war, oder alle Preise vergeben sind.

TeronG 25. Mai 2007 09:56

Re: Mit Zufallsteuerung aus einem Memo einige Texte ausgeben
 
Lösche doch einfach die schon gewonnenen Preise.

z.B.: Zu löschenden gewinn mit dem Letzten Tauschen und dann das dynamische array um eins verkleinern.
Die for-schleife kannste dann mit "for i := 0 to high(a) do ..." realisieren ohne, daß du übers Ziel hinausschießt. ^^

Du könntest was ich schöner fände auch statt deinem Array eine TStringList benutzen. Vorteil währe 1.) die hat ein .Delete und 2.) ein .LoadFromFile bzw. .SaveToFile

LingNeu 25. Mai 2007 12:19

Re: Mit Zufallsteuerung aus einem Memo einige Texte ausgeben
 
Danke Euch für die guten Ideen,
das mit dem 2.Array werde ich mal versuchen. Da hab ich erstmal genug zu tun.
merci nochmals
LingNeu

shmia 25. Mai 2007 12:31

Re: Mit Zufallsteuerung aus einem Memo einige Texte ausgeben
 
Zum zufälligen Auswählen von Strings aus einer Liste gibt es
eine geniale Unit (*) in der Code-Library: http://www.delphipraxis.net/internal...ct.php?t=21709

Interessant könnte auch das zufällige Umordnen einer Stringliste sein:
http://www.delphipraxis.net/internal...t.php?t=104766


(*) komisch, hier riecht es so nach Eichenlaub... :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:31 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