Переменные сортировки Netlogo - PullRequest
0 голосов
/ 15 января 2019

Я хочу упорядочить эти числа в переменных.
Я тестировал с Ifs и не нашел способ, как это сделать.

Затем я протестировал с сортировкой, но мне кажется, что я не принимаю переменные.

let ginyo00 [xcor] of coche 0     
let ginyo01 [xcor] of coche 1
let ginyo02 [xcor] of coche 2
let ginyo03 [xcor] of coche 3
output-print ginyo00
output-print ginyo01
output-print ginyo02
output-print ginyo03
output-print "====="
set maxv max (list ginyo00 ginyo01 ginyo02 ginyo03)
show sort [ginyo00 ginyo01 ginyo02 ginyo03]

Error that shows

Мне нужен способ сортировки этих значений и знать, какие из них.

1 Ответ

0 голосов
/ 15 января 2019

Примитив sort работает со списками или наборами агентов, для документов .

Таким образом, вы можете использовать его с переменными так же, как вы получили max, используя примитив list, чтобы превратить ваши переменные в список для sort:

show sort (list ginyo00 ginyo01 ginyo02 ginyo03)

Вы также можете получить эту информацию без промежуточных переменных:

let my-coches coches with [ who < 4 ]
ask my-coches [ output-print xcor ]
set maxv max ([ xcor ] of my-coches)
show sort ([ xcor ] of my-coches)

Если на самом деле вам нужен coches в отсортированном порядке вместо значений в порядке, вы можете использовать sort-on вместо:

let sorted-coches sort-on [xcor] my-coches
show sorted-coches
...