Слайд 1Алгоритм как модель деятельности
10 класс
Учитель информатики: Грязных В.С.
Слайд 205/13/2018
Что такое алгоритмическая модель?
Почему алгоритм можно назвать моделью и что
он моделирует?
Алгоритм – это понятное и точное предписание конкретному исполнителю
совершить конечную последователь-ность действий, приводящую к поставленной цели.
Цель достигается через деятельность некоторого исполнителя.
Слайд 305/13/2018
Этапы деятельности:
Определение цели;
Планирование работы исполнителя;
Работа исполнителя;
Получение результата.
Где
же здесь место алгоритму?
Алгоритм – это детальный план работы
исполнителя , это описание последовательности действий, которые должен совершить исполнитель.
Слайд 405/13/2018
Алгоритм является информационной моделью деятельности исполнителя. Такую модель будем называть
алгоритмической.
Рис. Этапы движения от цели к результату.
Определение
цели
Построение
плана-
алгоритма
Работа
исполнителя
Получение
результата
Модель
работы
исполнителя
Слайд 505/13/2018
Система команд исполнителя
Чтобы построить реальный план-алгоритм, нужно
знать возможности исполнителя. Эти возможности определяются СКИ. Составляя алгоритм нельзя
выходить за рамки СКИ.
Проще построить алгоритм для программно управляемого автомата, чем для человека. Для автомата СКИ – это строго определённый набор команд на формализованном языке описания алгоритмов. Такие языки называются языками программирования, а алгоритм – программой.
СКИ человека невозможно полностью описать.
Слайд 605/13/2018
Пример алгоритмической модели.
Задача:
угадывание целого числа из заданного
диапазона методом половинного деления. Первый игрок загадывает целое число из
заданного диапазона чисел,
например от 1 до 100.
Второй должен угадать число за наименьшее количество вопросов.
Слайд 705/13/2018
Алгоритм для исполнителя-человека.
Алгоритм Угадывание числа
Дано: диапазон чисел от А до
В
Надо: угадать число Х, задуманное игроком, используя алгоритм половинного деления
Начало
1.Задать
вопрос: Х меньше среднего значения между А и В?
2.Если ответ «да», то принять за значение В целую часть среднего значения.
3.Если ответ «нет», то принять за значение А ближайшее целое число, большее, чем среднее.
4.Если значения А и В равны, то их общее значение и есть искомое число Х.
5. Если значения А и В не равны, то вернуться к исполнению пункта 1.
Конец
Слайд 805/13/2018
Блок-схема
нет
да нет
Алгоритм для исполнителя-компьютера.
Слайд 905/13/2018
Алгоритм для исполнителя-компьютера.
Алгоритмический язык
Алг Половинное деление
Цел А, В, Х
Начало
Ввод А,
В, Х
Пока А≠В, повторять
Нц
Если Х≤(А+В)/2
То В:=ЦЕЛ((А+В)/2)
Иначе
А:=ЦЕЛ((А+В)/2)+1
Кц
Вывод А
Конец
Слайд 1005/13/2018
Структурное программирование
Структура построенного алгоритма – цикл с вложенным ветвлением.
Любой
алгоритм можно построить из сочетания трёх основных алгоритмических структур: следования,
ветвления и цикла. Это утверждение – основа методики, которая называется структурным программированием.
Если алгоритм построен структурно, то легко перейти от описания алгоритма к программе.
Слайд 1105/13/2018
Трассировка алгоритма - модель работы процессора.
Чтобы проверить правильность
алгоритма, совсем не обязательно переводить его на язык программирования. Протестировать
алгоритм может и человек - путём трассировки. Выполняя ручную трассировку, человек моделирует работу процессора, исполняя каждую команду и занося результаты выполнения команд в трассировочную таблицу.
Выберем интервал угадываемых чисел от 1 до 8. Пусть игрок задумал число 3.
Слайд 1405/13/2018
Трассировка алгоритма - модель работы процессора.
Программа выполняется по шагам (первый
столбец таблицы).
В столбце «Команда алгоритма» отображается содержимое регистра
команд процессора, куда помещается очередная команда.
В столбце «Переменные» отображается содержимое ячеек памяти, отведённых под переменные величины.
В графе «Выполняемое действие» отражаются действия, выполняемые арифметико-логическим устройством процессора.
Слайд 1505/13/2018
Вывод:
Таким образом, алгоритм в совокупности с трассировочной таблицей полностью моделируют
процесс обработки информации, происходящий в компьютере.
Слайд 1605/13/2018
Система основных понятий