Исполнитель Водолей

Содержание

Слайд 2

Система команд

1. наполни A

2. вылей A

3. перелей из A в

Система команд 1. наполни A 2. вылей A 3. перелей из A в B A A
B

A

A

Слайд 3

Задачи из папки «Водолей»

«3»: 1.vod (за 4 шага)
«4»: 1.vod (за 4

Задачи из папки «Водолей» «3»: 1.vod (за 4 шага) «4»: 1.vod (за
шага)
2.vod (за 4 шага)
«5»: 1.vod (за 4 шага)
2.vod (за 4 шага)
3.vod (за 8 шагов)
«6»: 1.vod (за 4 шага)
2.vod (за 4 шага)
3.vod (за 8 шагов)
4.vod (за 10 шагов)

Слайд 4

Исполнитель Водолей

Урок 1. Как решать задачи для Водолея?

Исполнитель Водолей Урок 1. Как решать задачи для Водолея?

Слайд 5

Метод перебора

(0,0)

(5,0)

(0,3)

(2,3)

(3,0)

(3,3)

(5,1)

(2,0)

(0,3)

(5,3)

+A

+B

B→A

B→A

+B

+B

A→B

-B

-A

-A

+A

+A

граф

-A

-A

-A

-B

+A

A

B

Есть 5-литровый сосуд (A) и 3-литровый (B). Отмерьте 1 литр воды.

Метод перебора (0,0) (5,0) (0,3) (2,3) (3,0) (3,3) (5,1) (2,0) (0,3) (5,3)

Слайд 6

Метод бильярда

наполни B

перелей
из B в A

перелей
из A в B

вылей A

вылей B

наполни

Метод бильярда наполни B перелей из B в A перелей из A
A

Есть 5-литровый сосуд (A) и 3-литровый (B). Отмерьте 1 литр воды.

наполни B
перелей из B в A
наполни B
перелей из B в A

Слайд 7

Общий алгоритм (бильярд)

пока (в сосуде A <> X) и (в сосуде B

Общий алгоритм (бильярд) пока (в сосуде A X) и (в сосуде B
<> X)
если B пуст, то наполни B
если A полон, то вылей A
перелей из B в A
конец

цикл

Слайд 8

Табличная запись решения

Есть 5-литровый сосуд (A) и 3-литровый (B). Отмерьте 1 литр

Табличная запись решения Есть 5-литровый сосуд (A) и 3-литровый (B). Отмерьте 1
воды.

наполни B
перелей из B в A
наполни B
перелей из B в A

+B

B→A

+B

B→A

Слайд 9

Ещё один пример

Есть 6-литровый сосуд (A) и 3-литровый (B). Отмерьте 2 литра

Ещё один пример Есть 6-литровый сосуд (A) и 3-литровый (B). Отмерьте 2 литра воды.
воды.

Слайд 10

Программа для Водолея в Кумире

использовать Водолей
алг Отмерить 1 литр
нач
наполни B
перелей

Программа для Водолея в Кумире использовать Водолей алг Отмерить 1 литр нач
из B в A
наполни B
перелей из B в A
кон

начало алгоритма

конец алгоритма

подключить исполнителя

название
алгоритма

Слайд 11

Задачи из практикума «Водолей»

Урок 1. Линейные алгоритмы
«3»: 1-1, 1-2
«4»: 1-1, 1-2
1-3, 1-4
«5»:

Задачи из практикума «Водолей» Урок 1. Линейные алгоритмы «3»: 1-1, 1-2 «4»:
1-1, 1-2
1-3, 1-4
1-5, 1-6

Слайд 12

Исполнитель Водолей

Урок 2. Циклы

Исполнитель Водолей Урок 2. Циклы

Слайд 13

Задача

3 л

2 л

A

B

Есть 3-литровый сосуд (A) и 2-литровый (B). Отмерьте 1 литр

Задача 3 л 2 л A B Есть 3-литровый сосуд (A) и
воды.

наполни A
перелей из A в B

A B
3 0
1 2

Слайд 14

Задача

Есть 7-литровый сосуд (A) и 2-литровый (B). Отмерьте 1 литр воды.

наполни

Задача Есть 7-литровый сосуд (A) и 2-литровый (B). Отмерьте 1 литр воды.
A
перелей из A в B
вылей B
перелей из A в B
вылей B
перелей из A в B

A B
7 0
5 2
5 0
3 2
3 0
1 2
1 0

вылей B

команды повторяются 3 раза

Слайд 15

Цикл

Цикл – это многократное выполнение одинаковых действий.

начало

конец

наполни A

перелей из A в B
вылей

Цикл Цикл – это многократное выполнение одинаковых действий. начало конец наполни A
B

цикл

нет

да

сделали 3 раза?

Слайд 16

Цикл «N раз»

7 л

2 л

A

B

Есть сосуд A (его объем – 7 литров)

Цикл «N раз» 7 л 2 л A B Есть сосуд A
и 2-литровый сосуд (B). Отмерьте 1 литр воды.

использовать Водолей
алг Отмерить 1 литр
нач
наполни A
нц 3 раз
перелей из A в B
вылей B
кц
кон

Esc, Р

Слайд 17

Вычисление количества шагов

A л

2 л

A

B

Есть сосуд A (его объем – нечетное число)

Вычисление количества шагов A л 2 л A B Есть сосуд A
и 2-литровый сосуд (B). Отмерьте 1 литр воды.

размер A N
1 0
3 1
5 2
7 3
9 4
11 5

div(размер A, 2)

разделить размер A на 2 нацело

размер B

Слайд 18

Задачи из практикума «Водолей»

Урок 2. Циклы «N раз»
«3»: 2-1, 2-2, 2-3
«4»: 2-1,

Задачи из практикума «Водолей» Урок 2. Циклы «N раз» «3»: 2-1, 2-2,
2-2, 2-3
2-4, 2-5, 2-6
«5»: 2-1, 2-2, 2-3
2-4, 2-5, 2-6,
2-7, 2-8

Слайд 19

Исполнитель Водолей

Урок 3. Циклы с условием

Исполнитель Водолей Урок 3. Циклы с условием

Слайд 20

Задача

Есть 7-литровый сосуд (A) и 2-литровый (B). Отмерьте 1 литр воды.

наполни

Задача Есть 7-литровый сосуд (A) и 2-литровый (B). Отмерьте 1 литр воды.
A
перелей из A в B
вылей B
перелей из A в B
вылей B
перелей из A в B

A B
7 0
5 2
5 0
3 2
3 0
1 2
1 0

вылей B

при каком условии остановить цикл?

Слайд 21

Цикл

начало

конец

наполни A

перелей из A в B
вылей B

цикл

да

нет

в сосуде А <> 1?

Цикл начало конец наполни A перелей из A в B вылей B

Слайд 22

Программа в Кумире

использовать Водолей
алг Отмерить 1 литр
нач
наполни A
нц пока в

Программа в Кумире использовать Водолей алг Отмерить 1 литр нач наполни A
сосуде A <> 1
перелей из A в B
вылей B
кц
кон

начало цикла

конец цикла

зацикливание

Esc, П

Слайд 23

Задачи из практикума «Водолей»

Урок 3. Циклы «пока»
«3»: 3-1, 3-2
«4»: 3-1, 3-2
3-3, 3-4
«5»:

Задачи из практикума «Водолей» Урок 3. Циклы «пока» «3»: 3-1, 3-2 «4»:
3-1, 3-2
3-3, 3-4
3-5, 3-6

Слайд 24

Исполнитель Водолей

Урок 4. Переменные

Исполнитель Водолей Урок 4. Переменные

Слайд 25

Задача

Есть 7-литровый сосуд (A) и 2-литровый (B). Отмерьте 1 литр воды.
1) использовать

Задача Есть 7-литровый сосуд (A) и 2-литровый (B). Отмерьте 1 литр воды.
цикл пока
2) не использовать команду
в сосуде А

в сосуде А
7
5
3
1


← размер А
← уменьшить на 2
← уменьшить на 2
← уменьшить на 2

Слайд 26

Как хранить данные?

Оперативная память

12

112

23

5

62

77

812

32

65

321

132

ячейка памяти

нач
цел N
N:= 25
N:= размер А

Как хранить данные? Оперативная память 12 112 23 5 62 77 812
N:= N - 2
кон

?

25

7

5

переменная целого типа

новое значение переменной

уменьшить на 2

Переменная – это величина, имеющая имя, тип и значение. Значение переменной может изменяться во время работы программы.

Слайд 27

Переменные

использовать Водолей
алг Отмерить 1 литр
нач
цел N
наполни A
N := размер

Переменные использовать Водолей алг Отмерить 1 литр нач цел N наполни A
A
кон

нц пока N > 1
перелей из A в B
вылей B
N:= N - 2
кц

объявление целой переменной

запись нового значения в переменную

Слайд 28

Трассировка

Трассировка – это отслеживание изменения значений переменных во время работы программы.

F8 –

Трассировка Трассировка – это отслеживание изменения значений переменных во время работы программы.
выполнить один шаг.

эта команда еще не выполнялась

получено на предыдущем шаге цикла

Слайд 29

Задачи из практикума «Водолей»

Урок 4. Переменные
«3»: 4-1, 4-2
«4»: 4-1, 4-2
4-3, 4-4
«5»: 4-1,

Задачи из практикума «Водолей» Урок 4. Переменные «3»: 4-1, 4-2 «4»: 4-1,
4-2
4-3, 4-4
4-5, 4-6

Слайд 30

Исполнитель Водолей

Урок 5. Ветвления

Исполнитель Водолей Урок 5. Ветвления

Слайд 31

Задача

Есть два сосуда, один из них (неизвестно какой) имеет объем 3 литра,

Задача Есть два сосуда, один из них (неизвестно какой) имеет объем 3
а другой – 2 литра. Отмерьте 1 литр воды.

или

наполни A
перелей из A в B

наполни B
перелей из B в A

или

Слайд 32

Ветвление на блок-схеме

начало

конец

наполни A
перелей из A в B

ветвление

да

нет

наполни B
перелей из

Ветвление на блок-схеме начало конец наполни A перелей из A в B
B в A

Ветвление – это выбор одного из двух вариантов в зависимости от выполнения некоторого условия.

Слайд 33

Ветвление в программе

использовать Водолей
алг Отмерить 1 литр
нач
если размер B = 2

Ветвление в программе использовать Водолей алг Отмерить 1 литр нач если размер
то
наполни A
перелей из A в B
иначе
наполни B
перелей из B в A
все
кон

наполни A
перелей из A в B

наполни B
перелей из B в A

размер B = 2

условие

если условие выполнено (истинно)

если условие НЕ выполнено (ложно)

Esc, Е

Слайд 34

Задачи из практикума «Водолей»

Урок 5. Ветвления
«3»: 5-1, 5-2
«4»: 5-1, 5-2
5-3, 5-4
«5»: 5-1,

Задачи из практикума «Водолей» Урок 5. Ветвления «3»: 5-1, 5-2 «4»: 5-1,
5-2
5-3, 5-4
5-5, 5-6
«6»: 5-1, 5-2
5-3, 5-4
5-5, 5-6
5-7, 5-8