44 lines
2.8 KiB
Plaintext
44 lines
2.8 KiB
Plaintext
\b;Упражнение
|
||
Обыщите всю территорию между барьерами, используя \l;проверочного бота\u object\botsr; в поисках подходящего места для постройки деррика. Когда бот простукивает землю и находит подходящее для деррика место, он обозначит это место красным крестом.
|
||
|
||
\b;Описание
|
||
Зона между барьерами имеет площадь 25 квадратных метров. Наиболее эффективно будет проверять каждые 5 метров.
|
||
|
||
\image sniff1 12 12;
|
||
Лучший способ достичь этого - вложить два цикла \c;\l;for\u cbot\for;\n; один в другой:
|
||
\c;
|
||
\s;for ( int y=0 ; y<6 ; y=y+1 )
|
||
\s;{
|
||
\s; for ( int x=0 ; x<5 ; x=x+1 )
|
||
\s; {
|
||
\s; \n;зондирование почвы\c;
|
||
\s; \n;перейти на 5 метров вперед\c;
|
||
\s; }
|
||
\s; \n;зондирование почвы\c;
|
||
\s; \n;четверть оборота влево\c;
|
||
\s; \n;перейти на 5 метров вперед\c;
|
||
\s; \n;четверть оборота вправо\c;
|
||
\s;}
|
||
\n;
|
||
Эта программа хорошо работает только в начале. После первой линии бот поворачивает точно налево и исследует второю линию. Но после второй линии он должен свернуть вправо!
|
||
Вы заметите, что если \c;y\n; четное, бот должен повернуть налево, а если \c;y\n; нечетное, бот должен повернуть направо.
|
||
\l;Выражение\u cbot\expr; \c;y%2\n; возвращает остаток от деления \c;y\n; на \c;2\n;. например, если \c;y=3\n;, выражение возвращает \c;1\n;.
|
||
Проверьте \c;\l;if\u cbot\if; { }\n; может следовать за \c;else { }\n;. Если проверка истинная, будет выполнен первый \l;блок\u cbot\bloc; \c;{ }\n;. Иначе будет выполнен второй блок \c;{ }\n;.
|
||
\c;
|
||
\s;if ( y%2 == 0 )
|
||
\s;{
|
||
\s; y \n;четное\c;
|
||
\s;}
|
||
\s;else
|
||
\s;{
|
||
\s; y \n;нечетное\c;
|
||
\s;}
|
||
\n;
|
||
Теперь вы должны сами закончить программу.
|
||
|
||
\b;Комментарий
|
||
Используйте инструкцию \c;\l;sniff\u cbot\sniff;( )\n; чтобы простукать почву, и \c;\l;move\u cbot\move;( )\n; и \c;\l;turn\u cbot\turn;( )\n; чтобы перемещать бота.
|
||
|
||
\t;См. также
|
||
\l;Программирование\u cbot;, \l;типы\u cbot\type; и \l;категории\u cbot\category;.
|