Evtl. hat da jemand eine Idee.
Nun zum Array
Die Dimensionierung sieht z. b so aus:
Dummy.s(2,10) ; als Dummy Array
Dim Block1.s (100,6) ; In dem Array sind z. B. 100 Fragen
Block1.s(0,0)= "100" ;Anzahl der Fragen von Block 1
Block1.s(0,1)="6" ;Felder pro Array
Aufbau des Arrays Beispielhaft
Block1.s (AnzahlderFragen,1) ist die Frage als String
Block1.s (AnzahlderFragen,2..5) sind vier mögliche Antworten als String
Block1.s (AnzahlderFragen,6) ist die richtige Antwort numerisch als String
Das durchmischen der Fragen habe ich wie unten aufgeführt gelöst.
Das Problem bei dieser Lösung ist jedoch, das einige Fragen mehrfach vorkommen können.
Dies sollte jedoch ausgeschlossen sein. Hat da evtl. jemand noch eine Idee wie man das richtig hinkriegt? Nachdem das Durchmischen fertig ist, kann man zwar prüfen, ob Fragen öfter vorhanden sind. Bei grösseren Arrays wird das aber sehr langsam.
Code: Alles auswählen
For z.b= 1 To 100 ; 100 mal mischen
Repeat : x=Random(AnzahlDerFragen.b-1)+1 : y=Random(AnzahlDerFragen.b-1)+1 : Until x <> y ; Holt x und Y Zufallszahlen
For w = 0 To Val(Block1.s(0,1))
dummy.s(1,w)=Block1.s(x,w)
dummy.s(2,w)=Block1.s(y,w)
Next w
For w = 0 To Val(Block1.s(0,1))
Block1.s(x,w)=dummy.s(2,w)
Block1.s(y,w)=dummy.s(1,w)
Next w
Debug x
Next z.b