2016-04-24 19 views
1

irgendwelche Ideen, wie ich jedes Element einer Liste mit 2 multiplizieren kann n-values Funktion (anstelle von map) in Netlogo?Multiplikation jedes Elements einer Liste mit N-Werte in Netlogo

sagen, mein Code ist folgende:

let mylist n-values 10 [?] 
let mylist2 fput -1 lput 10 mylist 

, wie ich mylist2 ändern kann, so dass sein jedes Element verdoppelt - aber n-values mit?

Vielen Dank im Voraus!

Antwort

2

Nun, Sie würden n-values verwenden, um die Elemente beim ersten Erstellen der Liste zu verdoppeln. Sie verwenden n-values nicht wirklich, um die Liste danach zu ändern. map ist viel besser dafür. Wie dem auch sei, sieht die erste Liste Verdoppelung wie:

let mylist n-values 10 [ 2 * ? ] 
let mylist2 fput -2 lput 20 mylist 

Wenn Sie mylist2 nur Doppel möchten, können Sie sollten Verwendung map:

let mylist2 map [ 2 * ? ] (fput -2 lput 20 mylist) 

Update:

So klingt wie Dies ist für eine Aufgabe oder etwas. In diesem Fall können Sie es mit n-values und item tun, aber ich lasse Sie die Details erarbeiten;)

+0

danke! Ich bin mir dieser Möglichkeiten bewusst; aber ich muss n-Werte verwenden, um die zweite Liste irgendwie zu ändern. Ich verstehe, dass es nicht notwendig ist, es auf diese Weise zu ändern, aber ist es möglich, es zu tun? Gibt es einen Weg, es zu tun? – dotthei

+0

@dotthei Nun, Sie könnten das als 'n-Werte 12 [2 * (? - 1)]' 'tun, aber bitte erklären Sie, was Sie eigentlich erreichen wollen. Warum vermeiden Sie map? – Alan

+1

@dotthei Wenn das Hausaufgaben sind, solltest du es wahrscheinlich selbst durchdenken. – Alan

Verwandte Themen