0
Ist es möglich, eine Reihe von Werten mit einer Funktion in Scala rekursiv zu generieren?Werte programmgesteuert erzeugen scala
Etwas wie folgt aus:
def generateVal (nbrOfVal: Int) {
for (i <- 1 to nbrOfVal) {
val foo[i] = Seq.fill(6)(nextInt(100))}
}
Damit wäre es möglich, die val direkt zu verwenden.
Zum Beispiel generateVal (2) geben würde:
foo1: Seq[Int] = List(52, 83, 33, 85, 36, 39)
foo2: Seq[Int] = List(84, 47, 53, 66, 13, 72)
und dann könnten wir tun:
foo1.zipAll(foo2, 0, 0).map { case (a, b) => a + b }
res: Seq[Int] = List(136, 130, 86, 151, 49, 111)
Check [diese] (http://stackoverflow.com/questions/9094820/how-to-generate-a-list-of-random-numbers) – Esardes
Nur Neugierig, warum benutzt du 'Seq.fill (6) (nextInt (200))' nicht sofort? Warum Zip- und Summenlisten? –
Ich versuche, eine große Anzahl von Stichproben zu erzeugen, bei denen das Ergebnis des aktuellen Schritts von den Daten im vorherigen Schritt abhängt. Um die Linie zu durchbrechen und einen Stack-Überlauf zu vermeiden, plane ich, jede x-Iteration zu überprüfen, deshalb muss jeder Datensatz iterativ generiert werden, denke ich. – ulrich