Wählen Sie zufällig ein Element in einer Liste aus und entfernen Sie das ausgewählte für die nächste RundeHallo alle,
Ich habe eine Liste[1,2,3,4,5,6,7,8,9,10], aus der ich zufällig ein Element auswählen und dieses Element dann für die nächste zufällige Auswahl aus der Liste entfernen möchte. Ich muss die Auswahl viermal wiederholen.
Gibt es eine einfache Möglichkeit, das ausgewählte Element aus der Liste zu entfernen? Sowohl Remove als auch Remove From benötigen den i-ten Index der Elemente.
Ich danke Ihnen für Ihre Hilfe.
Automatisierung und SkripterstellungBetreff: Wählen Sie zufällig ein Element in einer Liste aus und entfernen Sie das ausgewählte für die nächste RundeEine bearbeitete Version von @Jeff_Perkinson Version, die den Rückgabewert „Remove From“ verwendet (sie gibt den Wert der entfernten Elemente als Liste zurück). Dieser Code ist möglicherweise nicht so einfach zu lesen, aber manchmal ist die Verwendung des Rückgabewerts von Remove From nützlich:
Names Default To Here(1);
theList = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j"};
While(N Items(theList) > 1,
// returns list of removed elements, we remove one value, so get first index
r_val = Remove From(theList, Random Integer(N Items(theList)))[1];
Print(Eval Insert("The chosen item was ^r_val^."));
);
Print("The chosen item is " || theList[1] || ".");Betreff: Wählen Sie zufällig ein Element in einer Liste aus und entfernen Sie das ausgewählte für die nächste RundeSie können auch Random Shuffle verwenden, um die Liste (Matrix) zufällig zu sortieren und dann die zufällige Liste (Matrix) viermal zu durchlaufen oder die ersten vier Elemente auszuwählen
Names Default To Here(1);
m = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
m_rand = Random Shuffle(m);
Show(m, m_rand);
Betreff: Wählen Sie zufällig ein Element in einer Liste aus und entfernen Sie das ausgewählte für die nächste RundeWürde so etwas funktionieren?
theList = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j"};
while(nitems(theList) > 1,
r=random integer(nitems(theList));
print("The chosen item was " || theList[r] || ". Element number " || char(r) || ".");
remove from(theList, r);
);
print("The chosen item is " || theList[1] || ".");