2016-04-08 2 views
1

Я загрузил файл cruise.nlogo из сообщества моделей NetLogo. Но когда я запустил этот файл, я получил ошибки в этой строке.Ошибка в заявлении foreach в NetLogo

foreach values-from patches [self] patchcolors [set pcolor-of ?1 ?2] 

Сначала он задал «значения-из» не определен: я объявил его как собственную переменную-патчи.

Во-вторых, он спросил «pcolor-of» не определен: я снова объявил его как другую переменную-патчей.

В-третьих, он задал команду «? 2»: ожидаемая команда.

Так что я не могу понять, почему эта ошибка существует. Пожалуйста, помогите, я использую версию netlogo5.2. Мне нужен файл фонового изображения для этого?

ответ

2

Это очень старый код стиля. См. Руководство по переходу NetLogo. Теперь мы пишем

(foreach sort patches patchcolors [ask ?1 [set pcolor ?2]]) 

Использование sort patches устраняет рандомизации. Если вы этого хотите, вместо этого вы можете использовать [self] of patches.

+0

Почему промежуточная переменная '_color'? Вы можете просто сделать '(foreach sort patches patchcolors [ask? 1 [set pcolor? 2]])'. –

+1

@NicolasPayette Для наглядности? Очевидно нет. Ред. – Alan

+0

Спасибо. но я думаю, что весь код в старом стиле, так как после изменения этого утверждения я снова получаю ошибки в других строках кода. –

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