| |
|
|
RudiB. | Ciao,
ich steh gerade voll auf dem Schlauch. Ich versuche eine fortlaufen Zahlenreihe in einem Array zufällig zu mischen. Hab da auch was probiert, bloß haut das nicht wirklich hin.
Es wird auf jeden Fall nicht gut gemischt.....Ich seh wohl den Wald vor lauter Bäumen nicht....Eine Shuffle-Funktion (willkürlich mischen gibst ja nicht in XProfan)...oder ??? |
|
|
| |
|
|
|
RudiB. | Hat sich erledigt....hab was in der Baby-Box gefunden und funktioniert prima.
|
|
|
| Xprofan X4 Rudolf Beske / München
Hardware: NB Intel I9 - 16GByte RAM | 21.04.2021 ▲ |
|
|
|
|
RudiB. | Hab das ganze mal verfeinert und eine Shuffle.inc gebastelt. Hiermit können fortlaufende Zahlenreihen zufällig gemischt werden. Außerdem kann ein Startpunkt und eine Schrittweite eingestellt werden.
Aufruf:
1.Parameter = Anzahl der Zahlenelemente im Array 2.Parameter = Anzahl der Elemente die Zufällig aus dieser Zahlenreihe ausgegeben werden. 3. Parameter ein leeres dynamisches INT-Array 4. Parameter = Startpunkt der Zahlenelemente z.B. 0 (0-1-2-3....) 5. Parameter = Schrittweite in der Zahlenelementreihe z.B. 5 (0-5-10-15...)
hier ein paar Code-Zeilen zum testen der INC
$I Shuffle.inc
CLS
window 100,200 -800,400
Declare Test_Array%[],anzahl_elemente%,ausgabe_elemente%,Start_bereich%,Schrittweite%
' ein Beispiel per Lottozahlen
anzahl_elemente%=49'49 Zahlen-Elemente
ausgabe_elemente%=6'6 Zahlen aus Zahlenfolge werden gemischt ausgegeben.
start_bereich%=1'Startbereich = 1
Schrittweite%=1'Schrittweite = 1
shuffle anzahl_elemente%,ausgabe_elemente%,Test_Array%[],start_bereich%,Schrittweite%
Print "z.B: Lottozahlen 6 aus 49"
Ausgabe
Print
' ein Beispiel per eine komplette Zahlenreihe die gemischt wird.
anzahl_elemente%=20'20 Zahlen-Elemente
ausgabe_elemente%=20'20 Zahlen aus Zahlenfolge werden gemischt ausgegeben.
start_bereich%=0'Startbereich = 0
Schrittweite%=1'Schrittweite = 1
shuffle anzahl_elemente%,ausgabe_elemente%,Test_Array%[],start_bereich%,Schrittweite%
Print "Ein Beispiel per eine komplette Zahlenreihe die gemischt wird, mit dem Startpunkt 0"
Ausgabe
Print
' 15 Zahlen-Elemente, 5 Zahlen werden gemischt ausgegeben, Startpunkt = 2, Schrittweite = 5
shuffle 15,5,Test_Array%[],2,5
Print "15 Zahlen-Elemente, 5 Zahlen werden gemischt ausgegeben, Startpunkt = 2, Schrittweite = 5"
Ausgabe
Print
' 15 Zahlen-Elemente, 8 Zahlen werden gemischt ausgegeben, Startpunkt = 0, Schrittweite = 2
shuffle 30,8,Test_Array%[],0,2
Print "30 Zahlen-Elemente, 8 Zahlen werden gemischt ausgegeben, Startpunkt = 0, Schrittweite = 2"
Ausgabe
waitinput
End
Proc Ausgabe
whileloop SizeOf(Test_Array%[])
Print Test_Array%[&loop-1],
EndWhile
Print
ArrDel Test_Array%[],0,SizeOf(Test_Array%[])-1'Arraygrösse wird auf 1 gesetzt.
EndProc
Es können auch negative Werte per Startpunkt und Schrittweite gewählt werden. |
|
|
| Xprofan X4 Rudolf Beske / München
Hardware: NB Intel I9 - 16GByte RAM | 22.04.2021 ▲ |
|
|
|