Команды циклов. Урок 2

1.

УРОК 2.
КОМАНДЫ ЦИКЛОВ

2.

Рассмотрим три программы:
1) FD 100 RT 120 FD 100 RT 120
FD 100 LT 120
(треугольник)
2) FD 100 LT 90
FD100 LT 90
FD 100 LT 90 FD 100 LT 90
(квадрат)
3) FD 80 RT 72
FD 80 RT 72
FD 80 RT 72
FD 80 RT 72
(пятиугольник)
FD 80 RT 72

3.

Посмотрев на эти программы внимательно, мы
увидим, что в каждой из них определенная группа
команд повторяется несколько раз:
FD 100 RT 120
3 раза в треугольнике
FD 100 LT 90
4 раза в квадрате
FD 80 RT 72
5 раз в пятиугольнике

4.

Чтобы выполнить несколько раз одну и ту же
команду
или
последовательность
команд,
используется специальная команда:
REPEAT n [повторяемые команды]
ПОВТОРИ n [повторяемые команды]
где n - количество повторений
Важное замечание: внутри квадратных скобок
команды REPEAT одной из команд может быть такая
же команда REPEAT.
Например: REPEAT N [REPEAT M [команды] ]

5.

Используя команду ПОВТОРИ мы можем переписать
предыдущие три программы:
1) ПОВТОРИ 3 [ FD 100 LT 120]
треугольник
2) REPEAT 4 [FD 100 LT 90]
квадрат
3) REPEAT 5 [FD 80 LT 72]
пятиугольник

6.

Задача: написать программу, которая будет
рисовать любой равносторонний выпуклого N –
угольника с длиной стороны равной X.
Рисуя N-угольник, черепашка поворачивается N раз на
один и тот же угол. Если в итоге она возвращается в исходное
положение, то в целом она повернется на 360 градусов .
Значит, каждый ее поворот равен 360/ N.
Программа для решения поставленной задачи такова:
REPEAT N [FD X LT 360 / N ]
или
ПОВТОРИ N [ВП X ЛВ 360/ N ]

7.

АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ В ЛОГО
Записывание арифметических операций на Лого
подчиняется следующим правилам:
1. вся последовательность операций записывается в
строчку;
2. обозначение операций:
* умножение
/
деление
+ сложение
-
вычитание

8.

3. приоритет выполнения операций такой же, как и в
обычной математике;
4. круглые скобки работают так же как в математике;
5. если в исходном арифметическом выражении
присутствуют скобки нескольких видов, при
записывании выражения на Лого все виды скобок
заменяются на круглые;
6. числа и операции
пробелом.
должны
быть
разделены

9.

Примеры:
а)
5+4
7−4
=> (5 + 4) / (7 - 4 )
б) [5+(3-4)*(13-6)]*4
=> (5 + (3 - 4) * (13- 6)) * 4

10.

РЕШЕНИЕ ЗАДАЧ
Задания в тетради
Что будут выполнять следующие программы:
1. REPEAT 5 [ FD 10 PU FD 15 PD ]

11.

2. REPEAT 8 [ FD 15 RT 90 FD 15 LT 90 ]

12.

3. REPEAT 8 [ FD 20 BK 20 LT 45 ]

13.

РЕШЕНИЕ ЗАДАЧ
Задания на компьютере
Нарисовать фигуры, используя Repeat:
4.
5.

14.

БЛОК-СХЕМА РИСОВАНИЯ
ТРЕУГОЛЬНИКА
Повторить 3
раза
Продвинуться
вперед
Повернуться
Repeat 3 [
FD 100
RT 120 ]

15.

ПРИМЕР РЕШЕНИЯ
2. Нарисовать фигуры, используя Repeat:
Код (программа):
cg pd
repeat 4 [rt 90 fd 100]
rt 90
repeat 3 [fd 100 lt 120]

16.

6. Нарисовать
равносторонний
пятиугольник следующего
вида со стороной 50
8.
7. Нарисовать такой же
пятиугольник, но вида:

17.

Нарисовать фигуры, используя Repeat:
9.
10.
11.
80

18.

ПРИМЕР
Повторить 4
раза
Нарисовать Δ
Повторить 3
раза
Вперед
Поворот
Сместиться

19.

ДОПОЛНИТЕЛЬНЫЕ ЗАДАНИЯ
1. Крыша – равносторонний треугольник со стороной
– 150.
Стены – квадрат со стороной 150.
Окно – квадрат со стороной 40 точно по центру дома.

20.

ДОПОЛНИТЕЛЬНЫЕ ЗАДАНИЯ
2. Нарисовать звездочку, сориентированную в
пространстве следующим образом:
Подсказка:
3. Нарисовать звездочку, сориентированную в
пространстве следующим образом:

21.

ДОПОЛНИТЕЛЬНЫЕ ЗАДАНИЯ
5.
6.

22.

ДОМАШНЕЕ ЗАДАНИЕ
Алгоритмика:
-
Выучить структуру команды REPEAT / ПОВТОРИ
Решить задания 9, 10, 11.
По желанию решить дополнительные задания
Выслать программы преподавателю на почту
Логика:
-
Решить письменно логические задачи к уроку 2.
Сдать на следующем уроке
Условия логических задач размещены на сайте
iamprogrammer.itv.ru

23.

ОРГМОМЕНТЫ.
КАК ПРАВИЛЬНО ОФОРМЛЯТЬ ДЗ
Задача 11.
cg pd
repeat 4 [repeat 3 [fd 100 lt 120] rt 90 ]

24.

НАЙДИТЕ ОШИБКУ
Условие: Нарисовать фигуру, используя repeat
9.
Решение

25.

НАЙДИТЕ ОШИБКУ
Условие: Нарисовать домик
Решение

26.

НАЙДИТЕ ОШИБКУ
Условие:
Решение

27.

НАЙДИТЕ ОШИБКУ
Условие: Звезда, стоящая ровно
Решение

28.

НАЙДИТЕ ОШИБКУ
Условие: Нарисовать звезду, используя Repeat
Решение
English     Русский Правила