Пример настоящей программы для компьютера на языке Лого
Давайте напишем настоящую программу на настоящем языке программирования. Для этого выберем язык Лого. Он предназначен в основном для рисования. Напишем программу для рисования домика, вот такого:
Начнем с того, что у нас в руках находится дискета с языком Лого. Вставим ее в компьютер. После нескольких нажатий на клавиши посредине экрана возникает вот такая маленькая черепашка:
С этого момента компьютер готов принимать нашу программу и выполнять ее. Занимательность и простота работы с Лого заключается в том, что многие его команды являются командами для черепашки нарисовать на экране те или иные разноцветные линии, что-нибудь покрасить и т.п. Передвигается черепашка по экрану маленькими шагами. Размер экрана по горизонтали и вертикали - несколько сотен шагов.
Из всего длинного списка команд Лого нам для рисования домика понадобятся только две. Приведем примеры их записи с пояснением:
ВПЕРЕД 28 | По этой команде черепашка продвинется вперед на 28 шагов, оставляя за собой тонкий след, то есть фактически она нарисует отрезок прямой длиной в 28 шагов. |
НАЛЕВО 60 | По этой команде черепашка повернется на месте налево на 60 градусов. |
А теперь напишем программу:
Программа | Пояснения |
ВПЕРЕД 40 | Черепашка идет вверх и рисует правую стенку дома |
НАЛЕВО 90 | Собираемся рисовать не крышу, а потолок |
ВПЕРЕД 50 | Черепашка рисует потолок |
НАЛЕВО 90 | Собираемся рисовать левую стенку дома |
ВПЕРЕД 40 | Черепашка рисует левую стенку дома |
НАЛЕВО 90 | Собираемся рисовать пол |
ВПЕРЕД 50 | Черепашка рисует пол |
НАЛЕВО 90 | Готовимся добраться до крыши по правой стене |
ВПЕРЕД 40 | Черепашка забирается на крышу по правой стене |
НАЛЕВО 45 | Собираемся рисовать правый скат крыши |
ВПЕРЕД 36 | Черепашка рисует правый скат крыши |
НАЛЕВО 90 | Собираемся рисовать левый скат крыши |
ВПЕРЕД 36 | Черепашка рисует левый скат крыши |
Как и программа для нашего воображаемого робота, любая программа для компьютера требует абсолютной точности записи. Нельзя допускать орфографических ошибок - НАЛЕВА, нельзя записывать команды по-другому - ВЛЕВО. Компьютер в этом случае просто откажется выполнять программу. Но если мы, соблюдая эти формальные правила, все же по невнимательности допустим ошибку в программе, компьютер программу выполнять не откажется и, выполнив ее, получит неправильный результат. Например, если в программе пятую сверху команду (для рисования левой стены) мы запишем так - ВПЕРЕД 60 (а не ВПЕРЕД 40), то домик будет выглядеть так:
Так же, как и в случае с роботом, если мы в процессе выполнения программы увидим, что черепашка рисует что-то не то, у нас не будет возможности на ходу исправить программу. Нам или придется ждать, когда она дорисует все до конца или нажатием на клавиши все стереть с экрана и привести черепашку в исходное состояние. После этого программу можно исправлять.
Это я говорил о программном режиме. Лого допускает и командный режим, когда черепашка выполняет команду сразу же, как получит ее с клавиатуры.
Может ли черепашка поумнеть? Да. Объясните черепашке, что составленная программа есть процедура с именем ДОМИК – и отныне вам достаточно будет отдать команду ДОМИК – и черепашка его нарисует.