Здесь показаны различия между двумя версиями данной страницы.
Следущая версия | Предыдущая версия Последняя версия Both sides next revision | ||
help:jump [2013/11/01 12:50] newsash создано |
help:jump [2015/04/08 00:55] 127.0.0.1 внешнее изменение |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | [[help:organizing|Назад: Пользовательские функции и процедуры]] | ||
=====Переходы внутри локации, циклы===== | =====Переходы внутри локации, циклы===== | ||
+ | |||
+ | * **JUMP** //[$метка]// - переход в текущем блоке кода на метку //[$метка]//. | ||
+ | * Метка на локации обозначается как ":[название метки]". После описания метки (через "&") могут идти операторы. | ||
+ | * Отдельными блоками кода считаются: | ||
+ | * Код "Выполнить при посещении" конкретной локации | ||
+ | * Каждая локация - отдельный блок кода | ||
+ | * Код действия даже если действие добавлено программно. | ||
+ | * Код в html-ссылке((<a href="EXEC: !код">ссылка</a>)). | ||
+ | * Код DYNAMIC/DYNEVAL | ||
+ | * //Пример://<sxh qsp> | ||
+ | jump 'КонеЦ' | ||
+ | p 'Это сообщение не будет выведено' | ||
+ | :конец | ||
+ | p 'А это сообщение пользователь увидит' | ||
+ | </sxh> | ||
+ | |||
+ | ====Циклы==== | ||
+ | |||
+ | С помощью оператора "JUMP" можно организовывать циклы: | ||
+ | <sxh qsp> | ||
+ | s=0 | ||
+ | :loop | ||
+ | if s<9: | ||
+ | s=s+1 | ||
+ | pl s | ||
+ | jump 'loop' | ||
+ | end | ||
+ | p 'Всё!' | ||
+ | </sxh> | ||
+ | |||
+ | Двойной цикл с одной меткой: | ||
+ | <sxh qsp> | ||
+ | :loop | ||
+ | if y<y0: | ||
+ | if x<x0: | ||
+ | ............ | ||
+ | x=x+1 | ||
+ | jump 'loop' | ||
+ | end | ||
+ | y=y+1 | ||
+ | x=0 | ||
+ | jump 'loop' | ||
+ | end | ||
+ | </sxh> | ||
+ | ---- | ||
+ | [[help:principle|Вперёд: Порядок работы интерпретатора]] |