10/1/20
АЛГОРИТМ И ЕГО СВОЙСТВА
9 класс
.
Цель:
- выяснить, что такое алгоритм, познакомиться с историей возникновения данного понятия, его свойствами, видами алгоритмов и формами, с помощью которых можно записать тот или иной алгоритм, а также где в реальной жизни мы встречаемся с алгоритмами
Историческая справка. Происхождение слова «алгоритм»
Правила выполнения арифметических действий над целыми числами и простыми дробями в десятичной системе счисления впервые были сформулированы выдающимся средневековым ученым по имени Мухаммед ибн Муса ал-Хорезми (в переводе с арабского это означает «Мухаммед, сын Мусы из Хорезма»), сокращенно Ал-Хорезми.
Ал-Хорезми жил и творил в IX веке. Арабский оригинал его арифметического труда утерян, но имеется латинский перевод XII века, по которому Западная Европа ознакомилась с десятичной позиционной системой счисления и правилами выполнения в ней арифметических действий.
Ал-Хорезми стремился к тому, чтобы сформулированные им правила были понятны для всех грамотных людей. Достичь этого в веке, когда еще не была разработана математическая символика (знаки операций, скобки, буквенные обозначения и т. п.), было очень трудно. Но Ал-Хорезми удалось выработать в своих трудах такой стиль четкого, строгого словесного предписания, который не давал читателю никакой возможности уклониться от предписанного или пропустить какие-нибудь действия.
С понятием «алгоритм» вы уже знакомились
- на других предметах : математика, физкультура, литература, физика.
разнообразные правила, предписывающие последовательность действий, цель которых состоит в достижении некоторого необходимого результата.
Подобные правила очень многочисленны.
Например,
мы обязаны следовать вполне определенной системе правил, чтобы найти корни квадратного уравнения, приготовить кофе и т.д .
Все мы живем в мире алгоритмов. Алгоритмы экономят силы и время человека, так как однажды усвоенным правилом (алгоритмом) вы можете пользоваться всю жизнь.
Под алгоритмом понимают понятное и точное предписание исполнителю выполнить конечную последовательность действий для достижения поставленной цели.
ЗАДАНИЕ : Познакомиться с исторической справкой и ответить на вопросы:
1. Откуда или как произошло слово «алгоритм»?
2. Что первоначально обозначало слов «алгоритм»? Наше время алгоритма.
Историческая справка. Происхождение слова «алгоритм»
В латинском переводе книги Ал-Хорезми правила начинались словами «Алгоризми сказал». С течением времени люди забыли, что «Алгоризми» — это автор правил, и стали сами эти правила называть алгоритмами. Постепенно «Алгоризми сказал» преобразовалось в «алгоритм гласит».
Таким образом, слово «алгоритм» происходит от имени ученого Ал-Хорезми. Как научный термин первоначально оно обозначало лишь правила выполнения действий в десятичной системе счисления. С течением времени это слово приобрело более широкий смысл и стало обозначать любые точные правила действий. В настоящее время слово «алгоритм» является одним из важнейших понятий науки информатики.
Всякий алгоритм составляется в расчете на определенного исполнителя.
Исполнитель алгоритма - это человек или автоматическое устройство, которое способно воспринимать и исполнять алгоритм.
Назовите исполнителей для приведённых ниже видов работ:
дворник
- Перевозка пассажиров в поезде –
машинист
- Приём экзаменов в школе –
учитель
- Приготовление еды в ресторане –
повар
- Выполнение домашнего задания –
ученик
Система команд исполнителя (СКИ) - это перечень элементарных предписаний (команд), которые исполнитель может исполнять.
Алгоритм обладает следующими свойствами
- Целенаправленность – любой алгоритм направлен на достижение определенной цели. Чаще всего целью алгоритма является получение результата при решении какой-нибудь задачи.
- Дискретность – алгоритм состоит из элементарных предписаний (команд).
- Понятность – элементарные предписания (команды) алгоритма должны быть точно сформулированы и однозначно понятны исполнителю, а исполнитель должен быть в состоянии их выполнить.
- Однозначность – после исполнения очередного элементарного предписания (команды) исполнителю точно определено, что делать дальше.
- Массовость – алгоритм можно использовать для решения той же задачи при других допустимых исходных данных.
Формы представления алгоритмов
Пример:
- Пример . Алгоритм определения периметра прямоугольника:
Дано: А,В — длины сторон прямоугольника.
Найти: Р- периметр прямоугольника.
Математическая модель; Р = (А + В) *2
- 1. Задать числовые значения А, В.
- 2. Сложить А и В. Результат обозначить X.
- 3. Умножить X на 2. Результат обозначить Р.
- 4. Записать в качестве ответа значение Р.
- 5. Конец.
Данный алгоритм рассчитан на исполнителя старшеклассника.
Графическая форма
Графическая форма
Графическая форма
При записи алгоритма в словесной и в графической форме допускается определенный произвол при изображении команд. Вместе с тем такая запись точна на столько, что позволяет человеку понять суть дела и исполнить алгоритм. Однако на практике в качестве исполнителей алгоритмов используются специальные автоматы – компьютеры. Поэтому алгоритм, предназначенный для исполнения на компьютере, должен быть записан на понятном ему языке.
3.Такой язык принято называть языком программирования, а форму представления алгоритма - программной. То есть программная форма записи алгоритма – это запись на языке программирования.
Программная форма записи алгоритма
Система команд исполнителя (СКИ) - это перечень элементарных предписаний (команд), которые исполнитель может исполнять.
Самостоятельная работа
Самостоятельная работа
Запишите:
- Алгоритм заваривания чая.
1.Имеются два кувшина ёмкостью 3 л и 8 л. Напишите алгоритм для того, чтобы набрать из реки 7 л воды (можно пользоваться только этими кувшинами).
2. Нужно поджарить три куска хлеба на сковороде, вмещающей только два таких куска. На поджаривание каждой стороны уходит 2 минуты. Можно ли поджарить хлеб меньше чем за 8 минут?
Имеются два кувшина ёмкостью 3 л и 8 л. Напишите алгоритм для того, чтобы набрать из реки 7 л воды (можно пользоваться только этими кувшинами).
Нужно поджарить три куска хлеба на сковороде, вмещающей только два таких куска. На поджаривание каждой стороны уходит 2 минуты. Можно ли поджарить хлеб меньше чем за 8 минут?
6
1
9
8
5
2
7
4
3
10
- Перечислите свойства алгоритма.
- С какими формами представления алгоритма вы познакомились сегодня ?
- Какую форму представления алгоритма мы рассмотрели?
1.Целенаправленность. 2.Дискретность. 3.Понятность
4.Однозначность. 5. Массовость
1.Словесная. 2. Графическая. 3. Программная
1.Словесная.
ДОПОЛНИТЕЛЬНО
- Составить алгоритм определения периметра прямоугольника
МЫ УЗНАЛИ
- Разрабатывать алгоритм может только человек
- Исполнять алгоритм могут люди и всевозможные технические устройства
Домашнее задание:
- П.4.1.
- Составить алгоритм старинной русской задачи: некий человек должен перевезти в лодке через реку волка, козу и капусту. За один перевоз он может перевезти только кого-то одного. Составьте алгоритм перевоза так, чтобы никто никого не съел.
Система команд исполнителя (СКИ) - это перечень элементарных предписаний (команд), которые исполнитель может исполнять.
«Работа с учебным исполнителем алгоритмов»
Исполнитель
РОБОТ
Вспомогательные алгоритмы
Среда исполнителя Робот
Исполнитель Робот «живёт» на клетчатом поле и умеет перемещаться в разных направлениях, а также закрашивать клетки. Стандартный размер поля 10 х 15 клеток (10 клеток в высоту, 15 в ширину). Изначально Робот находится в верхней левой клетке (это стартовая обстановка – хранится в файле start.fil)
СКИ исполнителя РОБОТ
У Робота есть четыре команды перемещения:
Также у Робота есть команда закрасить , которая закрашивает клетку, в которой Робот находится в настоящий момент.
При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →.
Цикл N раз для исполнителя РОБОТ
нц раз
кц
Цикл ПОКА для исполнителя РОБОТ
Условия цикла:
нц пока
кц
слева стена
справа стена
слева свободно
снизу стена
справа свободно
снизу свободно
сверху стена
клетка закрашена
сверху свободно
клетка чистая
ЗАДАНИЕ: Закрасить справа от Робота все клетки до стены и вернуться в исходное положение.
Вспомогательный алгоритм
- Вспомогательный алгоритм — относительно независимая часть алгоритма, имеющая оригинальное имя, по которому её можно вызывать из любой части основного алгоритма.
- Основной алгоритм всегда один, и в программе на языке КУМИР он располагается выше вспомогательного .
- Вспомогательный алгоритм используют в случаях, когда одни и те же действия необходимо выполнить несколько раз в разных местах программы.
Примечание:
- Любую картинку на поле Робота можно мысленно заключить в прямоугольник. При создании вспомогательного алгоритма удобно начинать рисовать из верхнего левого угла такого прямоугольника и в этой же точке заканчивать.
- Тогда вы всегда будете знать, где у вас будет находиться Робот после очередного вызова вспомогательного алгоритма.
Вспомогательный алгоритм для исполнителя Чертежник
Основной алгоритм
Вспом. алг.
Вспомогательный алгоритм для исполнителя Робот
Основной алгоритм
Вспом. алг.
Практическая работа. Задание 1
Составить алгоритм рисования представленного узора с использованием вспомогательного алгоритма фигура .
Примечание: алгоритм управления Роботом представлен в учебнике – стр.82. Используется стартовая обстановка Робота. Конечное положение Робота не имеет значения.
Сохраните созданный алгоритм в личной папке Робот под именем Узор_1.kum
Практическая работа. Задание 2
Составить алгоритм рисования представленного узора с использованием вспомогательного алгоритма квадрат .
Примечание: Используется стартовая обстановка Робота. Конечное положение Робота не имеет значения. Используйте циклы n раз .
Сохраните созданный алгоритм в личной папке Робот под именем Узор_2.kum
Практическая работа. Задание 3
Составить алгоритм рисования представленного узора с использованием вспомогательного алгоритма фигура .
Примечание: Используется стартовая обстановка Робота. Конечное положение Робота не имеет значения. Используйте циклы n раз .
Сохраните созданный алгоритм в личной папке Робот под именем Узор_3.kum
Практическая работа. Задание 4
Составить алгоритм рисования представленного узора с использованием вспомогательного алгоритма фигура .
Примечание: Используется стартовая обстановка Робота. Конечное положение Робота не имеет значения. Используйте циклы n раз .
Сохраните созданный алгоритм в личной папке Робот под именем Узор_4.kum
Практическая работа. Задание 5*
Составить алгоритм рисования представленного узора с использованием вспомогательных алгоритмов ряр1 и ряд2 .
Примечание: Используется стартовая обстановка Робота. Конечное положение Робота не имеет значения. Используйте циклы n раз .
Сохраните созданный алгоритм в личной папке Робот под именем Узор_5.kum