роботы
робототехника
микроконтроллеры
Главная
Новости
Спорт
Шаг за шагом
Статьи
Wiki
Форум
Downloads
Ссылки
Контакты
 

Моделируем робота в среде GameLOGO
Правило "правой руки". Универсальный алгоритм Люка-Тремо.  

Простейший робот
Схема и описание простого робота на одной микросхеме. Робот может двигаться на свет или следовать за рукой.  

Робот на микроконтроллере AVR
Схема робота на микроконтроллере. Примеры программ.  
myROBOT ЛОГО новости скачать Лого форум контакты ссылки
GameLogo - программирование на языке ЛОГО  
  О Лого   
  Паперт и Пиаже   
  Миры Лого   
  Почему GameLogo   
  Установка   
  Учебник Лого   
  Черепашка   
  Черепашья графика   
  Переменные   
  Ввод и вывод   
  Циклы   
  Условия   
  Датчик   
  Объекты   
  События   
  Мультимедиа   
  Черепашка считает   
  Графики функций   
  Массивы   
  Примеры и проекты   
  Задачник   beta  
  Примеры на форуме   

Условия в программах



Очень часто наши действия зависят от того или иного условия. Например:

  • если на улице хорошая погода, то можно совершить прогулку;
  • если дождь, то берём зонт, иначе зонт не берём.
    В программах также можно пользоваться условиями для того, чтобы определить, следует ли выполнять то или иное действие.

    Для того чтобы задать какое-либо условие, в GameLogo применяют конструкцию следующего вида:


    если <условие> то <команда>


    При истинности условия будет выполняться команда, стоящая после "то", в противном случае команда, стоящая после "то", выполнена не будет.

    В выражениях, создающих условия, используются знаки сравнения:

    =равно
    >больше
    <меньше
    >=больше или равно
    <=меньше или равно
    <>не равно


    Если необходимо выполнить разные действия в зависимости от того, выполняется условие или нет, применяют следующую конструкцию:


    если <условие> то <команда 1> иначе <команда 2>


    При выполнении условия будет выполнена <команда 1>, если же условие не выполнится, то будет выполнена <команда 2>.


    Пример:
    Выдержит ли мост, если по нему проедет грузовик весом 2000 кг., на который погрузили 50 коробок весом 80 кг. каждая?
    Предел нагрузки моста - 5000 кг.



          переменная m
          m = 2000 + 50 * 80
          если m > 5000 то пиши "не выдержит" иначе пиши "выдержит"


    В том случае, если при выполнении условия требуется выполнение нескольких команд, используется следующий тип записи условия:


    если <условие> то
       <команда>
       <команда>
       <команда>
       ...
    конец условия


    Ключевое слово "конец условия" обозначает конец многострочной конструкции, и его наличие в этом случае обязательно.

    Конструкция если ... то ... иначе аналогична конструкции если ... то, но позволяет задать действия, выполняемые как при выполнении условия, так и в случае его невыполнения.


    если <условие> то
       <команда>
       <команда>
       <команда>
       ...
    иначе

       <команда>
       <команда>
       <команда>
       ...
    конец условия


    Если заданное условие не выполняется и запись условия содержит ключевое слово "иначе", выполнится последовательность команд, расположенных следом за "иначе". После чего управление перейдет к командам, следующим после строки "конец условия".

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

    Попробуем написать программу из предыдущего примера с использованием многострочной записи условия.


    переменная m

       m = 2000 + 50 * 80

       если m > 5000 то
            пиши "не выдержит"
       иначе
            пиши "выдержит"
       конец условия



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


    Безусловный переход

    Команда безусловного перехода ПЕРЕЙТИ К осуществляет переход исполнения программы к указанной метке. Метка ставится на отдельной строке. Имя метки может быть любым, но не должно содержать пробелы и знаки препинания. После имени метки всегда ставится двоеточие. Пробел между именем метки и двоеточием не ставится.

    Пример:

    СТАРТ:

    вперед 10
    направо 5

    перейти к СТАРТ


    В данном примере с помощью безусловного перехода организовано бесконечное повторение команд, находящихся между меткой СТАРТ и командой перейти к СТАРТ.







  • Copyright © myrobot.ru, 2005-2013


    OpenHosting