Найти тему
Плохой Программист

Учим ребенка программированию. Птица.

В игре Птица мы улучшим приобретенный в Лабиринте опыт работы с оператором условного перехода и получим первичные навыки работы с координатами.

Цели игры - построить маршрут для птицы таким образом, чтобы она долетела до гнезда, по дороге схватив червячка.

И первый уровень нам наглядно показывает как быстро и эффективно с этим вопросом можно справиться.

Уже на втором уровне встречаем уже до боли знакомую конструкцию "если-иначе".

Птица летит по 2м отрезкам пути в разном направлении. Различить эти два пути мы можем по простому условию - "пойман ли червячок".

-2

Третий уровень абсолютно симметричен.

-3

Четвертый интересен тем, что тут у нас вводятся координаты по оси Х.

Т.е. смотрим - птичка у нас должна пролететь где-то от 20 по Х до 80 по Х, соответственно на отрезке пути, где Х меньше 80 летим прямо, а достигнув 80, спускаемся вниз.

-4

А если когда-нибудь нам понадобится лететь в обратном направлении и остановиться на координате х=20, то мы выберем другой интервал - х>20

-5

По сути и та, и та запись охватывает путь между 20 и 80 по х, но мы выбираем х<80, если нужно остановится в точке х=80 и х>20, если нужно остановиться в точке х=20.

-6

На следующем этапе у нас появляется возможность использовать обе оси координат.

Использовать координату У более логично, потому что птица летит вниз и У как раз меняется и путь птицы отследить легко - она летит по отрезку где у>20.

-7

Но никто не мешает вам, как наставнику, поизгаляться и заставить подопытного подумать как решить вторым способом с помощью координаты Х.

Тут нужно немножечко хитрости. Птицу нужно заставить лететь не отвесно вниз, а чуточку вбок, чтоб координата по Х все-таки изменилась .

-8

Здесь все встает с ног на голову - первое направление у нас как раз в блоке "иначе". В этот раз мы летим не на 270 градусов, а на 265, чтобы достичь внизу х=75. В момент, когда х стал 74, птица разворачивается на 180 градусов и летит к гнезду.

На шестом уровне у нас есть возможность комбинировать условия - смотреть где проще ориентироваться на поимку червя, где на координаты.

-9

На х тут опираться не приходится, потому что и к червячку и к гнезду птица летит по одним и тем же координатам х.

7 уровень. Тут все аналогично.

-10

На восьмом становится веселее. Добавляется блок "и", а это значит, что мы может задать уже не одно условие, а несколько.

Что такое "и"? Это элемент Булевой алгебры. Т.е. в данном случае нам предлагается рассматривать условия как истинные или как ложные.

Например, условие "червяк не пойман" - оно истинно когда червяк действительно не пойман и ложно, когда он уже пойман.

Условие "y>50" истинно когда у=60 и ложно когда у=40.

А вот уже условие ("червяк не пойман" и "y>50") истинно тогда и только тогда когда и червяк не пойман, и у=60.

-11

Здесь участки 2 и 3 были бы совершенно не различимы, если бы у нас не было возможности к изменениям координат добавить условие про червяка.

На девятом уровне нужно быть осторожным и понимать, что на многих участках пути координаты по одной из осей одинаковые, поэтому приходится ставить несколько условий, чтоб избегать конфликтов.

-12

И десятый уровень шедеврален - нужно вылететь из гнезда за червячком, а затем вернуться.

Тут нужно идти поэтапно. Сначала спокойной добываем червя.

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

-13

Сама площадка будет напоминать про сложность уровня, но нас этим не напугать!

Выбираться тоже будем поэтапно. Условия 1 и 2 абсолютно симметричны. И будут конфликтовать.

-14

Но разница есть! Непойманный червяк! Нужно добавить его к первому условию.

-15

Следующие конфликтные участки кода. Но мы-то уже знаем что делать!

-16

Конечный вариант кода должен выглядеть так.

-17

Видеоверсия

Учим ребенка программированию. Лабиринт.

Учим ребенка программированию. Черепашка.

Учим ребенка программировать. Фильм.

Учим ребенка программированию. Музыка.

Учим ребенка программированию. Учебный пруд.

Птицы
1138 интересуются