2015-01-03 2 views
3

Я успешно загрузил значения из файла данных с разделителями табуляции (.txt) в список, с xcor, ycor & значениями цвета для каждой из 10 черепах. Я прочитал в данных с помощью:NetLogo создает черепах из значений списка

file-open "File Input Load Turtles.txt" 
set turtle-data sentence turtle-data (list (list file-read file-read file-read)) 

Я сейчас пытаюсь создать 10 новых черепах на основе значений в новом списке. Я попробовал следующий синтаксис (среди многих других неудачных попыток):

foreach turtle-data crt set xcor first ? set ycor item 1 ? set color last ? 

Во-первых? в команде foreach NetLogo сообщает об ошибке «Эта специальная переменная здесь не определена».

Может ли кто-нибудь сказать мне правильный синтаксис для итеративного ссылки на список из 10 подписок для выполнения набора xcor, установить ycor и установить команды цвета в цикле foreach для создания 10 черепах?

Большое спасибо!

ответ

3

Это просто проблема синтаксиса. NetLogo понимает foreach turtle-data crt как значение foreach turtle-data [ crt ? ], а затем остальные анализируются как отдельные команды, следовательно, вы видите ошибку.

Вы хотите:

foreach turtle-data [ 
    crt 1 [ 
    set ... 
    ] 
] 

с квадратными скобками, чтобы разграничить, где тело цикла начинается и заканчивается. Обратите внимание, что вы должны указать номер crt.

+0

Да, это работает отлично! Теперь, когда вы его раскрываете, это имеет смысл. Надеюсь, мой следующий вопрос не будет настолько элементарным. Большое спасибо, Сет! –

+0

Добро пожаловать! Вы можете поблагодарить меня, приняв мой ответ (используя большую галочку рядом с ним). –

+0

Принимается с удовольствием ... Еще раз спасибо! –

Смежные вопросы