Слайд 2Домашнее задание
Сделать ДЗ Алгоритм Исполнитель Кузнечик и прислать на почту
учителю
Слайд 3Алгоритмика
Как вы думаете, программирование появилось с появлением компьютеров?
Нажимание кнопок не главный
признак программирования.
Самое важное в нем это алгоритмическое мышление, т.е. искусство размышлять, умение планировать свои действия, способность предусматривать различные обстоятельства и поступать соответственно с ними.
Слайд 4Алгоритмика
Искусство размышлять, умение планировать свои действия, способность предусматривать различные обстоятельства и
поступать соответственно с ними понадобились людям задолго до того как был изготовлен первый компьютер.
Слово «алгоритм» происходит от имени средневекового ученного Махаммеда ибн Мусы аль-Хорезми (787-850), жившего в Средней Азии.
Слайд 5Алгоритмика
В XIII веке, когда труды аль-Хорезми были переведены с арабского языка
на латынь, его имя записали так: Algorithmus.
А изобретали люди алгоритмы до Мухаммеда ибн Мусы?
Да, например, все математики знают так называемый алгоритм Евклида (жил больше двух тысяч лет назад).
Слайд 6Алгоритмика
Главное, что отличает специалиста по программированию, – это умение ясно мыслить.
Его указания должны быть настолько ясными, чтобы их мог понимать даже компьютер. Вот такой ясности мысли мы и будем учиться.
Слайд 7Старинная русская задача
Волк, коза и капуста.
Слайд 8Старинная русская задача
ЗАДАЧА: Крестьянин стоит на левом берегу с волком, козой
и капустой. Ему нужно все это перевести на правый берег. Но его лодка слишком мала: он может взять только одного пассажира – либо волка, либо козу, либо капусту. И еще – если на одном берегу оставить волка и козу, то волк съесть козу, если на одном берегу оставить козу и капусту, то коза съест капусту. Только в присутствии крестьянина они не безобразничают. Как тут поступить?
Слайд 9Старинная русская задача
Таким образом первые два шага в решении задачи:
Перевези козу
Переправься
По
команде перевези козу крестьянин перевозит козу, а по команде переправься переправляется в пустой лодке на другой берег.
Слайд 10Старинная русская задача
После этого у крестьянина есть две возможности:
перевезти волка;
перевезти
капусту.
Давайте подумаем над данными вариантами…
Слайд 11Старинная русская задача
Решение задачи в виде программы:
перевези козу
переправься
перевези волка
перевези козу
перевези капусту
переправься
перевези
козу
Слайд 12Старинная русская задача
УПРАЖНЕНИЕ:
Допустим, что крестьянин, перевезя на правый берег козу,
взял не волка, а капусту. Напишите его последовательность его действий в этом случае.
Слайд 13Старинная русская задача
Таким образом, все возможные действия крестьянина:
перевези козу,
переправься,
перевези волка,
перевези капусту.
Допустимы только такие действия, перечисленные в списке; все прочие строго запрещены.
Слайд 14Старинная русская задача
Исполнитель – это человек или механическое устройство (или скажем
компьютер) со строго определенным набором возможных операций.
Эти операции называются командами. Исполнитель может выполнять команды из набора и ничего более.
В задаче Крестьянин был Исполнителем, а его набор команд состоял из четырех операций: перевези козу, переправься, перевези волка, перевези капусту
Слайд 15Исполнитель и команды
Любая задача напоминает игру.
Например, шахматные правила четко говорят, что
позволено делать Шахматисту.
Все его другие привычки (например, любит ли он капусту) никак не связаны с игрой.
При этом есть одно существенное различие. Шахматисту во время игры приходится принимать собственные решения. А исполнитель не принимает никаких решений самостоятельно, он только выполняет команды, которые мы вставляем в программу.
Слайд 16
Исполнитель ВОДОЛЕЙ
Исполнителей Водолей – он занимается переливанием воды.
Слайд 17Исполнитель ВОДОЛЕЙ
Трудно ли отмерить литр воды?
Если есть литровая банка А,
то команда будет состоять из одного шага:
наполни А
Если есть две емкости: двухлитровая банка А и трехлитровая банка В. Тогда решение задачи состоит из двух шагов:
наполни В
перелей из В в А
Слайд 18Исполнитель ВОДОЛЕЙ
Команды Водолея бываю трех видов:
Первый вид: наполни А (или В,
С, …).
Второй вид: вылей из А (или В, С).
Третий вид: перелей из А в В (или из А в С и т.д.).
Выпишем все команды Водолея с двумя емкостями, например с ведрами: наполни А, наполни В, вылей из А, вылей из В, перелей из А в В, перелей из В в А.
Слайд 19Исполнитель ВОДОЛЕЙ
УПРАЖНЕНИЕ: напишите список команд для Водолея с тремя ведрами А,В,С.
Сколько
всего команд у вас получилось?
ЗАДАЧА 1: Отмерьте 1 литр воды с помощью одной трех литровой и одной пятилитровой банки.
ЗАДАЧА 1.2. Имеются 5-литровая емкость А и 8-литровая емкость В.
отмерьте 1 литр воды.
отмерьте 4 литра воды.
Слайд 20Исполнитель ВОДОЛЕЙ
Домашнее задание:
УПРАЖНЕНИЕ:
Придумайте свой собственный вариант Водолея.
Придумайте задачу для
него.
Опишите решение придуманной задачи.
Слайд 22Исполнитель УДВОИТЕЛЬ
Удвоитель – воображаемое устройство с экраном и двумя кнопками.
На
экране отображается число.
В момент включения Удвоителя оно равно 0.
На клавишах удвоителя написано прибавь 1 и умножь на 2.
При нажатии на первую клавишу число, изображенное на экране, увеличивается на 1, а при нажатии на вторую удваивается.
Удвоитель – это исполнитель с двумя с командами: прибавь 1 и умножь на 2.
Слайд 23Исполнитель УДВОИТЕЛЬ
Попробуйте получить число 17, начинайте с 0.
Слайд 24Исполнитель УДВОИТЕЛЬ
РЕШЕНИЕ 1:
прибавь 1
прибавь 1
прибавь 1
прибавь 1
прибавь 1
прибавь 1
прибавь 1
прибавь 1
прибавь
1
прибавь 1
прибавь 1
прибавь 1
прибавь 1
прибавь 1
прибавь 1
прибавь 1
прибавь 1
Слайд 25Исполнитель УДВОИТЕЛЬ
Решение 2:
прибавь 1
умножь на 2
умножь на 2
умножь на 2
умножь на
2
прибавь 1
Какая из этих двух программ вам больше нравиться и почему?
Слайд 26Исполнитель УДВОИТЕЛЬ
УПРАЖНЕНИЕ: Придумайте еще какую-нибудь программу для получения числа 17.
ЗАДАЧА: Можно
ли получить на экране любое положительное число? Поясните свой ответ.
СОРЕВНОВАНИЕ: 1 называет число, все пишут программу, побеждает тот у кого минимум операций.
Слайд 27Исполнитель УДВОИТЕЛЬ
ЗАДАЧА:
Получите число 15 менее, чем за 8 шагов.
Получите
число 1024.
На экране записано число 4, получите из него число 15, менее чем за 6 шагов.
Слайд 28Задание 1. У исполнителя Квадратор две команды, которым присвоены номера:
1. вычти 3
2.
возведи в квадрат
Первая из них уменьшает число на экране на 3, вторая возводит его во вторую степень. Исполнитель работает только с натуральными числами. Составьте алгоритм получения из числа 4 числа 49, содержащий не более 5 команд. В ответе запишите только номера команд. (Например, 21211 — это алгоритм: возведи в квадрат, вычти 3, возведи в квадрат, вычти 3, вычти 3, который преобразует число 3 в 30.) Если таких алгоритмов более одного, то запишите любой из них.
Слайд 29Задание 2. У исполнителя Квадратор две команды, которым присвоены номера:
1. вычти 1
2.
возведи в квадрат
Первая из них уменьшает число на экране на 1, вторая возводит его во вторую степень. Исполнитель работает только с натуральными числами. Составьте алгоритм получения из числа 5 числа 80, содержащий не более 5 команд. В ответе запишите только номера команд. (Например, 21121 — это алгоритм: возведи в квадрат, вычти 1, вычти 1, возведи в квадрат, вычти 1, который преобразует число 3 в 48.) Если таких алгоритмов более одного, то запишите любой из них.
Слайд 30Задание 3. У исполнителя Квадратор две команды, которым присвоены номера:
1. прибавь 1
2.
возведи в квадрат
Первая из них увеличивает число на экране на 1, вторая возводит его во вторую степень. Исполнитель работает только с натуральными числами. Составьте алгоритм получения из числа 3 числа 84, содержащий не более 5 команд. В ответе запишите только номера команд. (Например, 11221 — это алгоритм: прибавь 1, прибавь 1, возведи в квадрат, возведи в квадрат, прибавь 1, который преобразует число 1 в 82.) Если таких алгоритмов более одного, то запишите любой из них.
Слайд 31Задание 4. У исполнителя Квадратор две команды, которым присвоены номера:
1. прибавь 3
2.
возведи в квадрат
Первая из них увеличивает число на экране на 3, вторая возводит его во вторую степень. Исполнитель работает только с натуральными числами. Составьте алгоритм получения из числа 4 числа 58, содержащий не более 5 команд. В ответе запишите только номера команд. (Например, 22111 — это алгоритм: возведи в квадрат, возведи в квадрат, прибавь 3, прибавь 3, прибавь 3, который преобразует число 3 в 48.) Если таких алгоритмов более одного, то запишите любой из них.
Слайд 32Задание 5. У исполнителя Квадратор две команды, которым присвоены номера:
1. вычти 1
2.
возведи в квадрат
Первая из них уменьшает число на экране на 1, вторая возводит его во вторую степень. Исполнитель работает только с натуральными числами. Составьте алгоритм получения из числа 2 числа 64, содержащий не более 5 команд. В ответе запишите только номера команд. (Например, 11121 — это алгоритм: вычти 1, вычти 1, вычти 1, возведи в квадрат, вычти 1, который преобразует число 7 в 15.) Если таких алгоритмов более одного, то запишите любой из них.