SlideShare a Scribd company logo
1 of 23
АЛГОРИТМЫ И ИСПОЛНИТЕЛИ
ОСНОВЫ АЛГОРИТМИЗАЦИИ
Ключевые слова
• алгоритм
• свойства алгоритма
• дискретность
• понятность
• определённость
• результативность
• массовость
• исполнитель
• характеристики исполнителя
• круг решаемых задач
• среда
• режим работы
• система команд
• формальное исполнение алгоритма
Примеры алгоритмов
Пополнение счёта телефона через терминал
1) Подойти к терминалу по оплате
платежей
2) Выбрать оператора связи
3) Ввести номер телефона
4) Проверить правильность введённого
номера
5) Вставить денежную купюру в
купюроприёмник
6) Дождаться сообщения о зачислении
денег на счёт
7) Получить чек
Примеры алгоритмов
Рисование лошади
Примеры алгоритмов
Исходные данные Алгоритм Результат
Общая схема работы алгоритма
1.Задать два числа
2.Сложить заданные числа
3.Разделить сумму на 2
1.Задать два числа
2.Сложить заданные числа
3.Разделить сумму на 2
Вычислительный алгоритм
Среднее арифметическое двух чиселСреднее арифметическое двух чисел
Исполнитель алгоритма
Исполнитель - это некоторый объект (человек, животное,
техническое устройство), способный выполнять
определённый набор команд.
ФормальныйФормальный НеформальныйНеформальный
ИсполнительИсполнитель
Круг решаемых задачКруг решаемых задач
Среда исполнителяСреда исполнителя
Режимы работыРежимы работы
Непосредственное управление
Программное управление
Область, обстановка, условия
Исполнители алгоритмовИсполнители алгоритмов Ôàéë "SWF"
СКИСКИ
Исполнитель Робот
Исполнитель Кузнечик
Определение объектов,
указанных в задаче
Разработка алгоритмаРазработка алгоритма
Установление свойств
объектов, отношений
и действий с объектами
Определение исходных
данных и результата
Определение
последовательности
действий
Запись
последовательности
действий с помощью
команд СКИ
Алгоритм – модель деятельности исполнителя алгоритмов
Разработка алгоритма
Свойства алгоритма
Свойства алгоритмаСвойства алгоритма
Путь решения задачи
разделён на отдельные шаги
Алгоритм состоит из
команд, входящих в СКИ
Команды понимаются
однозначно
Обеспечивается получение
ожидаемого результата
Обеспечивается решение
задач с различными исходными
данными
ДискретностьДискретность
ПонятностьПонятность
ОпределённостьОпределённость
РезультативностьРезультативность
МассовостьМассовость
Дискретность (от лат. discretus – разделенный,
прерывистый) означает, что путь решения задачи разделён
на отдельные шаги (действия). Каждому действию
соответствует предписание (команда). Только выполнив одну
команду, исполнитель сможет приступить к выполнению
следующей.
да нет
Начало
Конец
x, y
a
x > y
a = x a = y
Понятность означает, что алгоритм состоит только из
команд, входящих в систему команд исполнителя, т. е. из
таких команд, которые исполнитель может воспринять и по
которым может выполнить требуемые действия.
Окрошка «Мясная»
1-1.5 л кваса
500 г картофеля
300 г колбасы
3 яйца
200 г редиса
300 г огурцов
зелень по вкусу
сметана
соль
перец
Картофель отварить до готовности.
Остудить, почистить.
Нарезать кубиками.
Колбасу нарезать кубиками.
Яйца нарезать кубиками.
Редис тонко нарезать.
Огурцы нарезать кубиками.
Смешать картофель, колбасу, яйца,
редис, огурцы.
Посолить, поперчить.
Выложить в тарелки.
Залить квасом, посыпать зеленью.
Подавать со сметаной.
Рецепт приготовления
Определённость означает, что в алгоритме нет команд,
смысл которых может быть истолкован исполнителем
неоднозначно; недопустимы ситуации, когда после
выполнения очередной команды исполнителю неясно, какую
команду выполнять на следующем шаге.
Доехать до стадиона
1. Идти прямо
Данная последовательность действий не обладает свойством определённости!
В какую сторону повернуть?
В какой автобус сесть?
2. Повернуть
3. Идти прямо
4. Сесть в автобус
5. Доехать до остановки «Стадион»
Какое расстояние нужно пройти прямо?
Результативность означает, что алгоритм должен
обеспечивать возможность получения результата после
конечного, возможно, очень большого, числа шагов. При этом
результатом считается не только обусловленный постановкой
задачи ответ, но и вывод о невозможности продолжения по
какой-либо причине решения данной задачи.
Данная последовательность команд не
обладает свойством результативности. Что нужно
изменить?
1. Взять книгу
2. Открыть первую страницу
3. Пока не конец книги выполнять
следующие действия:
3.1 Прочитать текст
3.2 Перелистнуть страницу
Чтение книги
3.3 Прочитать текст
3.4 Открыть первую страницу
Массовость означает, что алгоритм должен обеспечивать
возможность его применения для решения любой задачи из
некоторого класса задач с различными исходными данными.
Алгоритм вычисления корней квадратного уравнения.
Конец
да
нет
Начало
Ввод
коэффициентов
Вычисление
дискриминанта
Дискриминант
меньше 0?
Вычисление
значений корней
«Корней нет»Вывод корней
a
acbb
x
2
42
2,1
−±−
=
Решето ЭратосфенаРешето Эратосфена Ôàéë "SWF"
Рассмотренная последовательность действий является
алгоритмом, так как она удовлетворяет свойствам:
•дискретности - процесс нахождения простых чисел
разбит на шаги;
•понятности - каждая команда понятна ученику 8
класса, выполняющему этот алгоритм;
•определённости - каждая команда трактуется и
выполняется исполнителем однозначно; имеются указания
об очерёдности выполнения команд;
•результативности - через некоторое число шагов
достигается результат;
•массовости - последовательность действий применима
для любого натурального n.
Решето Эратосфена
Алгоритм - это предназначенное для
конкретного исполнителя описание
последовательности действий, приводящих от
исходных данных к требуемому результату,
которое обладает свойствами:
•дискретности
•понятности
•определённости
•результативности
•массовости
Возможность автоматизации
деятельности человека
Решение задачи по готовому алгоритму требует от
исполнителя только строгого следования заданным
предписаниям.
Формальное исполнение алгоритма обеспечивает
возможность автоматизации деятельности человека
Процесс решения задачи представляется
в виде последовательности операций
Создается машина, способная выполнять
эти операции в указанной последовательности
Человек освобождается от рутинной работы,
выполнение которой поручается автомату
Роботизированная линия сборки, управляемая
компьютером и запрограммированная на производство
сварных швов на корпусе каждого автомобиля
Автоматизация деятельности человека
Автоматизация гостиниц.
Профессиональная система «UCS-Shelter».
Автоматизированы такие процессы как бронирование,
поселение, выселение, работа со счетами гостей.
Автоматизация торговли.
Автоматизация услуг в сфере торговли делает скорость работы
персонала значительно выше, поднимает уровень
обслуживания покупателей, позволяет вести учет товара.
Автоматизация производства
Самое главное
Исполнитель - некоторый объект (человек, животное,
техническое устройство), способный выполнять определённый
набор команд.
Формальный исполнитель одну и ту же команду всегда
выполняет одинаково. Для каждого формального исполнителя
можно указать: круг решаемых задач, среду, систему команд и
режим работы.
Алгоритм - предназначенное для конкретного
исполнителя описание последовательности действий,
приводящих от исходных данных к требуемому результату,
которое обладает свойствами дискретности, понятности,
определённости, результативности и массовости.
Способность исполнителя действовать формально
обеспечивает возможность автоматизации деятельности
человека.
Вопросы и задания
Что называют алгоритмом?Подберите синонимы к слову «предписание».Приведите примеры алгоритмов, изучаемых вами в
школе.
Кто может быть исполнителем алгоритма?
Приведите пример формального исполнителя.
Приведите пример, когда человек выступает в роли
формального исполнителя.
Какие команды должны быть у робота,
выполняющего функции:
а) кассира в магазине?
б) дворника?
в) охранника?
От чего зависит круг решаемых задач исполнителя
«компьютер»?
Рассмотрите в качестве исполнителя текстовый
процессор, имеющийся на вашем компьютере.
Охарактеризуйте круг решаемых этим исполнителем
задач и его среду.
Что такое команда, система команд исполнителя?
Перечислите основные свойства алгоритма.К чему может привести отсутствие какого-либо
свойства у алгоритма?
Приведите примеры.
В чём важность возможности формального исполнения
алгоритма?Последовательность чисел строится по следующему
алгоритму:
первые два числа последовательности принимаются
равными 1;
каждое следующее число последовательности
принимается равным сумме двух предыдущих чисел.
Запишите 10 первых членов этой
последовательности.
Некоторый алгоритм получает из одной цепочки символов
новую цепочку следующим образом.
Сначала записывается исходная цепочка символов, после
нее записывается исходная цепочка символов в обратном
порядке, затем записывается буква, следующая в русском
алфавите за той буквой, которая в исходной цепочке стояла
на последнем месте. Если в исходной цепочке на последнем
месте стоит буква Я, то в качестве следующей буквы
записывается буква А.
Получившаяся цепочка является результатом работы
алгоритма. Например, если исходная цепочка символов была
ДОМ, то результатом работы алгоритма будет цепочка
ДОММОДН.
Дана цепочка символов КОМ. Сколько букв О будет в
цепочке символов, которая получится, если применить
алгоритм к данной цепочке, а затем ещё раз применить
алгоритм к результату его работы?
Исполнитель Черепашка перемещается на экране
компьютера, оставляя след в виде линии.
Система команд Черепашки состоит из двух команд:
Вперёд n (где n - целое число) – вызывает
передвижение Черепашки на n шагов в направлении
движения - в том направлении, куда развёрнуты её
голова и корпус;
Направо m (где m - целое число) - вызывает
изменение направления движения Черепашки на m
градусов по часовой стрелке.
Что будет результатом исполнения Черепашкой
алгоритма:
Повтори 8 [ Направо 45 Вперёд 45 ]?
Система команд исполнителя Вычислитель состоит
из двух команд, которым присвоены номера:
1 - вычти 1
2 - умножь на 3
Первая из них уменьшает число на 1, вторая
увеличивает число в 3 раза.
При записи алгоритмов для краткости указываются
лишь номера команд.
Запишите алгоритм для исполнителя Вычислитель,
содержащий не более 5 команд:
а) получения из числа 3 числа 16
б) получения из числа 1 числа 25
Система команд исполнителя Конструктор состоит из
двух команд, которым присвоены номера:
1 - приписать 2
2 - разделить на 2
По первой из них к числу приписывается справа 2,
по второй число делится на 2.
Как будет преобразовано число 8, если исполнитель
выполнит алгоритм 22212?
Составьте алгоритм в системе команд этого
исполнителя, по которому число 1 будет преобразовано
в число 16 (в алгоритме должно быть не более 5
команд).
Исполнитель Робот действует на клетчатом поле,
между соседними клетками которого могут стоять стены.
Робот передвигается по клеткам поля и может выполнять
следующие команды, которым присвоены номера:
1 - Вверх
2 - Вниз
3 - Вправо
4 - Влево
При выполнении каждой такой команды Робот
перемещается в соседнюю клетку в указанном
направлении. Если же в этом направлении между
клетками стоит стена, то Робот разрушается.
В какой клетке должен находиться исполнитель Робот,
чтобы после выполнения алгоритма 3241 в неё же и
вернуться?
А
В
Опорный конспект
ДискретностьДискретность
Свойства алгоритмаСвойства алгоритма
ПонятностьПонятность
ОпределённостьОпределённость
РезультативностьРезультативность
МассовостьМассовость
Алгоритм - это предназначенное для конкретного исполнителя
описание последовательности действий, приводящих от исходных
данных к требуемому результату, которое обладает свойствами
дискретности, понятности, определённости,
результативности и массовости.
Электронные образовательные ресурсы
1. http://school-collection.edu.ru/catalog/res/07e215ef-cd48-450d-8cf4-f5777cd832b2/?
interface=catalog – решето Эратосфена
2. http://files.school-collection.edu.ru/dlrstore/58e9a0c3-11df-4c94-a5eb-
b0a7b359ea35/9_32.swf - исполнители алгоритмов

More Related Content

What's hot

алг и прогр (11кл)
алг и прогр (11кл)алг и прогр (11кл)
алг и прогр (11кл)isva69
 
331 информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
331  информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с331  информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
331 информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189сdfdkfjs
 
Анастасия Бордонос - Проектирование тестов
Анастасия Бордонос - Проектирование тестовАнастасия Бордонос - Проектирование тестов
Анастасия Бордонос - Проектирование тестовYandex
 
Как использовать Противоречие для поиска решения?
Как использовать Противоречие для поиска решения?Как использовать Противоречие для поиска решения?
Как использовать Противоречие для поиска решения?Wise Solutions Center
 
Переменные: тип, имя, значение
Переменные: тип, имя, значениеПеременные: тип, имя, значение
Переменные: тип, имя, значениеЕлена Никонова
 
введение в паскаль
введение в паскальвведение в паскаль
введение в паскальisva69
 
учебник по теме алгоритмизации
учебник по теме алгоритмизацииучебник по теме алгоритмизации
учебник по теме алгоритмизацииhudooognik
 
алгоритмы и исполнители гот
алгоритмы и исполнители готалгоритмы и исполнители гот
алгоритмы и исполнители готIvanG96
 

What's hot (11)

алг и прогр (11кл)
алг и прогр (11кл)алг и прогр (11кл)
алг и прогр (11кл)
 
331 информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
331  информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с331  информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
331 информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
 
Анастасия Бордонос - Проектирование тестов
Анастасия Бордонос - Проектирование тестовАнастасия Бордонос - Проектирование тестов
Анастасия Бордонос - Проектирование тестов
 
8 инф
8 инф8 инф
8 инф
 
Как использовать Противоречие для поиска решения?
Как использовать Противоречие для поиска решения?Как использовать Противоречие для поиска решения?
Как использовать Противоречие для поиска решения?
 
Переменные: тип, имя, значение
Переменные: тип, имя, значениеПеременные: тип, имя, значение
Переменные: тип, имя, значение
 
введение в паскаль
введение в паскальвведение в паскаль
введение в паскаль
 
учебник по теме алгоритмизации
учебник по теме алгоритмизацииучебник по теме алгоритмизации
учебник по теме алгоритмизации
 
Применение модели GOMS
Применение модели GOMSПрименение модели GOMS
Применение модели GOMS
 
алгоритмы и исполнители гот
алгоритмы и исполнители готалгоритмы и исполнители гот
алгоритмы и исполнители гот
 
Algoritm
AlgoritmAlgoritm
Algoritm
 

Similar to 8 2-1

Presentation Klochkova
Presentation KlochkovaPresentation Klochkova
Presentation Klochkovaklochkova
 
Платформа SmartActors
Платформа SmartActorsПлатформа SmartActors
Платформа SmartActorsetyumentcev
 
лабораторная работа 1 2
лабораторная работа 1 2лабораторная работа 1 2
лабораторная работа 1 2Gulnaz Shakirova
 
якобовский - введение в параллельное программирование (1)
якобовский - введение в параллельное программирование (1)якобовский - введение в параллельное программирование (1)
якобовский - введение в параллельное программирование (1)Michael Karpov
 
Презентация "Алгоритмы"
Презентация "Алгоритмы"Презентация "Алгоритмы"
Презентация "Алгоритмы"Johnny_Lean
 
Tomato Engine: Как мы создавали онлайн шутер с авторитарным сервером
Tomato Engine: Как мы создавали онлайн шутер с авторитарным серверомTomato Engine: Как мы создавали онлайн шутер с авторитарным сервером
Tomato Engine: Как мы создавали онлайн шутер с авторитарным серверомDevGAMM Conference
 
АВТОМАТИЧЕСКИЙ ПОДБОР ПАРАМЕТРОВ ВНЕШНЕЙ СРЕДЫ ПРИ ГЕНЕРАЦИИ АВТОМАТНЫХ ПРОГР...
АВТОМАТИЧЕСКИЙ ПОДБОР ПАРАМЕТРОВ ВНЕШНЕЙ СРЕДЫ ПРИ ГЕНЕРАЦИИ АВТОМАТНЫХ ПРОГР...АВТОМАТИЧЕСКИЙ ПОДБОР ПАРАМЕТРОВ ВНЕШНЕЙ СРЕДЫ ПРИ ГЕНЕРАЦИИ АВТОМАТНЫХ ПРОГР...
АВТОМАТИЧЕСКИЙ ПОДБОР ПАРАМЕТРОВ ВНЕШНЕЙ СРЕДЫ ПРИ ГЕНЕРАЦИИ АВТОМАТНЫХ ПРОГР...ITMO University
 
алгоритмы исполнители алгоритмический язык.
алгоритмы исполнители алгоритмический язык.алгоритмы исполнители алгоритмический язык.
алгоритмы исполнители алгоритмический язык.metodkopilka
 
Вечный вопрос измерения времени
Вечный вопрос измерения времениВечный вопрос измерения времени
Вечный вопрос измерения времениTatyanazaxarova
 
практика 5
практика 5практика 5
практика 5student_kai
 
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)Mikhail Kurnosov
 
Лекция 7: Фибоначчиевы кучи (Fibonacci heaps)
Лекция 7: Фибоначчиевы кучи (Fibonacci heaps)Лекция 7: Фибоначчиевы кучи (Fibonacci heaps)
Лекция 7: Фибоначчиевы кучи (Fibonacci heaps)Mikhail Kurnosov
 
обработка информации и алгоритмы
обработка информации  и алгоритмыобработка информации  и алгоритмы
обработка информации и алгоритмыЕлена Ключева
 
системы счиление
системы счилениесистемы счиление
системы счилениеYUYFF
 
03
0303
03JIuc
 

Similar to 8 2-1 (20)

Моделирование поведения сложных динамических систем
Моделирование поведения сложных динамических системМоделирование поведения сложных динамических систем
Моделирование поведения сложных динамических систем
 
Presentation Klochkova
Presentation KlochkovaPresentation Klochkova
Presentation Klochkova
 
Платформа SmartActors
Платформа SmartActorsПлатформа SmartActors
Платформа SmartActors
 
лабораторная работа 1 2
лабораторная работа 1 2лабораторная работа 1 2
лабораторная работа 1 2
 
якобовский - введение в параллельное программирование (1)
якобовский - введение в параллельное программирование (1)якобовский - введение в параллельное программирование (1)
якобовский - введение в параллельное программирование (1)
 
Презентация "Алгоритмы"
Презентация "Алгоритмы"Презентация "Алгоритмы"
Презентация "Алгоритмы"
 
Tomato Engine: Как мы создавали онлайн шутер с авторитарным сервером
Tomato Engine: Как мы создавали онлайн шутер с авторитарным серверомTomato Engine: Как мы создавали онлайн шутер с авторитарным сервером
Tomato Engine: Как мы создавали онлайн шутер с авторитарным сервером
 
4 algoritm
4 algoritm4 algoritm
4 algoritm
 
Алгоритм
АлгоритмАлгоритм
Алгоритм
 
АВТОМАТИЧЕСКИЙ ПОДБОР ПАРАМЕТРОВ ВНЕШНЕЙ СРЕДЫ ПРИ ГЕНЕРАЦИИ АВТОМАТНЫХ ПРОГР...
АВТОМАТИЧЕСКИЙ ПОДБОР ПАРАМЕТРОВ ВНЕШНЕЙ СРЕДЫ ПРИ ГЕНЕРАЦИИ АВТОМАТНЫХ ПРОГР...АВТОМАТИЧЕСКИЙ ПОДБОР ПАРАМЕТРОВ ВНЕШНЕЙ СРЕДЫ ПРИ ГЕНЕРАЦИИ АВТОМАТНЫХ ПРОГР...
АВТОМАТИЧЕСКИЙ ПОДБОР ПАРАМЕТРОВ ВНЕШНЕЙ СРЕДЫ ПРИ ГЕНЕРАЦИИ АВТОМАТНЫХ ПРОГР...
 
алгоритм
алгоритмалгоритм
алгоритм
 
алгоритмы исполнители алгоритмический язык.
алгоритмы исполнители алгоритмический язык.алгоритмы исполнители алгоритмический язык.
алгоритмы исполнители алгоритмический язык.
 
Вечный вопрос измерения времени
Вечный вопрос измерения времениВечный вопрос измерения времени
Вечный вопрос измерения времени
 
практика 5
практика 5практика 5
практика 5
 
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
 
Лекция 7: Фибоначчиевы кучи (Fibonacci heaps)
Лекция 7: Фибоначчиевы кучи (Fibonacci heaps)Лекция 7: Фибоначчиевы кучи (Fibonacci heaps)
Лекция 7: Фибоначчиевы кучи (Fibonacci heaps)
 
обработка информации и алгоритмы
обработка информации  и алгоритмыобработка информации  и алгоритмы
обработка информации и алгоритмы
 
системы счиление
системы счилениесистемы счиление
системы счиление
 
Введение в алгоритмы и структуры данных
Введение в алгоритмы и структуры данныхВведение в алгоритмы и структуры данных
Введение в алгоритмы и структуры данных
 
03
0303
03
 

More from natanikonenko19

More from natanikonenko19 (10)

8 3-5
8 3-58 3-5
8 3-5
 
8 3-4
8 3-48 3-4
8 3-4
 
8 3-3
8 3-38 3-3
8 3-3
 
8 3-2
8 3-28 3-2
8 3-2
 
8 3-1
8 3-18 3-1
8 3-1
 
6 9-1-informacionnoe-modelirovanie
6 9-1-informacionnoe-modelirovanie6 9-1-informacionnoe-modelirovanie
6 9-1-informacionnoe-modelirovanie
 
Inf tema 3_urok_16_6-klas
Inf tema 3_urok_16_6-klasInf tema 3_urok_16_6-klas
Inf tema 3_urok_16_6-klas
 
Cфера и шар
Cфера и шарCфера и шар
Cфера и шар
 
Локальная сеть и ее топология
Локальная сеть и ее топологияЛокальная сеть и ее топология
Локальная сеть и ее топология
 
Информация.
Информация.Информация.
Информация.
 

8 2-1

  • 2. Ключевые слова • алгоритм • свойства алгоритма • дискретность • понятность • определённость • результативность • массовость • исполнитель • характеристики исполнителя • круг решаемых задач • среда • режим работы • система команд • формальное исполнение алгоритма
  • 3. Примеры алгоритмов Пополнение счёта телефона через терминал 1) Подойти к терминалу по оплате платежей 2) Выбрать оператора связи 3) Ввести номер телефона 4) Проверить правильность введённого номера 5) Вставить денежную купюру в купюроприёмник 6) Дождаться сообщения о зачислении денег на счёт 7) Получить чек
  • 5. Примеры алгоритмов Исходные данные Алгоритм Результат Общая схема работы алгоритма 1.Задать два числа 2.Сложить заданные числа 3.Разделить сумму на 2 1.Задать два числа 2.Сложить заданные числа 3.Разделить сумму на 2 Вычислительный алгоритм Среднее арифметическое двух чиселСреднее арифметическое двух чисел
  • 6. Исполнитель алгоритма Исполнитель - это некоторый объект (человек, животное, техническое устройство), способный выполнять определённый набор команд. ФормальныйФормальный НеформальныйНеформальный ИсполнительИсполнитель Круг решаемых задачКруг решаемых задач Среда исполнителяСреда исполнителя Режимы работыРежимы работы Непосредственное управление Программное управление Область, обстановка, условия Исполнители алгоритмовИсполнители алгоритмов Ôàéë "SWF" СКИСКИ
  • 9. Определение объектов, указанных в задаче Разработка алгоритмаРазработка алгоритма Установление свойств объектов, отношений и действий с объектами Определение исходных данных и результата Определение последовательности действий Запись последовательности действий с помощью команд СКИ Алгоритм – модель деятельности исполнителя алгоритмов Разработка алгоритма
  • 10. Свойства алгоритма Свойства алгоритмаСвойства алгоритма Путь решения задачи разделён на отдельные шаги Алгоритм состоит из команд, входящих в СКИ Команды понимаются однозначно Обеспечивается получение ожидаемого результата Обеспечивается решение задач с различными исходными данными ДискретностьДискретность ПонятностьПонятность ОпределённостьОпределённость РезультативностьРезультативность МассовостьМассовость
  • 11. Дискретность (от лат. discretus – разделенный, прерывистый) означает, что путь решения задачи разделён на отдельные шаги (действия). Каждому действию соответствует предписание (команда). Только выполнив одну команду, исполнитель сможет приступить к выполнению следующей. да нет Начало Конец x, y a x > y a = x a = y
  • 12. Понятность означает, что алгоритм состоит только из команд, входящих в систему команд исполнителя, т. е. из таких команд, которые исполнитель может воспринять и по которым может выполнить требуемые действия. Окрошка «Мясная» 1-1.5 л кваса 500 г картофеля 300 г колбасы 3 яйца 200 г редиса 300 г огурцов зелень по вкусу сметана соль перец Картофель отварить до готовности. Остудить, почистить. Нарезать кубиками. Колбасу нарезать кубиками. Яйца нарезать кубиками. Редис тонко нарезать. Огурцы нарезать кубиками. Смешать картофель, колбасу, яйца, редис, огурцы. Посолить, поперчить. Выложить в тарелки. Залить квасом, посыпать зеленью. Подавать со сметаной. Рецепт приготовления
  • 13. Определённость означает, что в алгоритме нет команд, смысл которых может быть истолкован исполнителем неоднозначно; недопустимы ситуации, когда после выполнения очередной команды исполнителю неясно, какую команду выполнять на следующем шаге. Доехать до стадиона 1. Идти прямо Данная последовательность действий не обладает свойством определённости! В какую сторону повернуть? В какой автобус сесть? 2. Повернуть 3. Идти прямо 4. Сесть в автобус 5. Доехать до остановки «Стадион» Какое расстояние нужно пройти прямо?
  • 14. Результативность означает, что алгоритм должен обеспечивать возможность получения результата после конечного, возможно, очень большого, числа шагов. При этом результатом считается не только обусловленный постановкой задачи ответ, но и вывод о невозможности продолжения по какой-либо причине решения данной задачи. Данная последовательность команд не обладает свойством результативности. Что нужно изменить? 1. Взять книгу 2. Открыть первую страницу 3. Пока не конец книги выполнять следующие действия: 3.1 Прочитать текст 3.2 Перелистнуть страницу Чтение книги 3.3 Прочитать текст 3.4 Открыть первую страницу
  • 15. Массовость означает, что алгоритм должен обеспечивать возможность его применения для решения любой задачи из некоторого класса задач с различными исходными данными. Алгоритм вычисления корней квадратного уравнения. Конец да нет Начало Ввод коэффициентов Вычисление дискриминанта Дискриминант меньше 0? Вычисление значений корней «Корней нет»Вывод корней a acbb x 2 42 2,1 −±− =
  • 16. Решето ЭратосфенаРешето Эратосфена Ôàéë "SWF" Рассмотренная последовательность действий является алгоритмом, так как она удовлетворяет свойствам: •дискретности - процесс нахождения простых чисел разбит на шаги; •понятности - каждая команда понятна ученику 8 класса, выполняющему этот алгоритм; •определённости - каждая команда трактуется и выполняется исполнителем однозначно; имеются указания об очерёдности выполнения команд; •результативности - через некоторое число шагов достигается результат; •массовости - последовательность действий применима для любого натурального n. Решето Эратосфена
  • 17. Алгоритм - это предназначенное для конкретного исполнителя описание последовательности действий, приводящих от исходных данных к требуемому результату, которое обладает свойствами: •дискретности •понятности •определённости •результативности •массовости
  • 18. Возможность автоматизации деятельности человека Решение задачи по готовому алгоритму требует от исполнителя только строгого следования заданным предписаниям. Формальное исполнение алгоритма обеспечивает возможность автоматизации деятельности человека Процесс решения задачи представляется в виде последовательности операций Создается машина, способная выполнять эти операции в указанной последовательности Человек освобождается от рутинной работы, выполнение которой поручается автомату
  • 19. Роботизированная линия сборки, управляемая компьютером и запрограммированная на производство сварных швов на корпусе каждого автомобиля Автоматизация деятельности человека Автоматизация гостиниц. Профессиональная система «UCS-Shelter». Автоматизированы такие процессы как бронирование, поселение, выселение, работа со счетами гостей. Автоматизация торговли. Автоматизация услуг в сфере торговли делает скорость работы персонала значительно выше, поднимает уровень обслуживания покупателей, позволяет вести учет товара. Автоматизация производства
  • 20. Самое главное Исполнитель - некоторый объект (человек, животное, техническое устройство), способный выполнять определённый набор команд. Формальный исполнитель одну и ту же команду всегда выполняет одинаково. Для каждого формального исполнителя можно указать: круг решаемых задач, среду, систему команд и режим работы. Алгоритм - предназначенное для конкретного исполнителя описание последовательности действий, приводящих от исходных данных к требуемому результату, которое обладает свойствами дискретности, понятности, определённости, результативности и массовости. Способность исполнителя действовать формально обеспечивает возможность автоматизации деятельности человека.
  • 21. Вопросы и задания Что называют алгоритмом?Подберите синонимы к слову «предписание».Приведите примеры алгоритмов, изучаемых вами в школе. Кто может быть исполнителем алгоритма? Приведите пример формального исполнителя. Приведите пример, когда человек выступает в роли формального исполнителя. Какие команды должны быть у робота, выполняющего функции: а) кассира в магазине? б) дворника? в) охранника? От чего зависит круг решаемых задач исполнителя «компьютер»? Рассмотрите в качестве исполнителя текстовый процессор, имеющийся на вашем компьютере. Охарактеризуйте круг решаемых этим исполнителем задач и его среду. Что такое команда, система команд исполнителя? Перечислите основные свойства алгоритма.К чему может привести отсутствие какого-либо свойства у алгоритма? Приведите примеры. В чём важность возможности формального исполнения алгоритма?Последовательность чисел строится по следующему алгоритму: первые два числа последовательности принимаются равными 1; каждое следующее число последовательности принимается равным сумме двух предыдущих чисел. Запишите 10 первых членов этой последовательности. Некоторый алгоритм получает из одной цепочки символов новую цепочку следующим образом. Сначала записывается исходная цепочка символов, после нее записывается исходная цепочка символов в обратном порядке, затем записывается буква, следующая в русском алфавите за той буквой, которая в исходной цепочке стояла на последнем месте. Если в исходной цепочке на последнем месте стоит буква Я, то в качестве следующей буквы записывается буква А. Получившаяся цепочка является результатом работы алгоритма. Например, если исходная цепочка символов была ДОМ, то результатом работы алгоритма будет цепочка ДОММОДН. Дана цепочка символов КОМ. Сколько букв О будет в цепочке символов, которая получится, если применить алгоритм к данной цепочке, а затем ещё раз применить алгоритм к результату его работы? Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. Система команд Черепашки состоит из двух команд: Вперёд n (где n - целое число) – вызывает передвижение Черепашки на n шагов в направлении движения - в том направлении, куда развёрнуты её голова и корпус; Направо m (где m - целое число) - вызывает изменение направления движения Черепашки на m градусов по часовой стрелке. Что будет результатом исполнения Черепашкой алгоритма: Повтори 8 [ Направо 45 Вперёд 45 ]? Система команд исполнителя Вычислитель состоит из двух команд, которым присвоены номера: 1 - вычти 1 2 - умножь на 3 Первая из них уменьшает число на 1, вторая увеличивает число в 3 раза. При записи алгоритмов для краткости указываются лишь номера команд. Запишите алгоритм для исполнителя Вычислитель, содержащий не более 5 команд: а) получения из числа 3 числа 16 б) получения из числа 1 числа 25 Система команд исполнителя Конструктор состоит из двух команд, которым присвоены номера: 1 - приписать 2 2 - разделить на 2 По первой из них к числу приписывается справа 2, по второй число делится на 2. Как будет преобразовано число 8, если исполнитель выполнит алгоритм 22212? Составьте алгоритм в системе команд этого исполнителя, по которому число 1 будет преобразовано в число 16 (в алгоритме должно быть не более 5 команд). Исполнитель Робот действует на клетчатом поле, между соседними клетками которого могут стоять стены. Робот передвигается по клеткам поля и может выполнять следующие команды, которым присвоены номера: 1 - Вверх 2 - Вниз 3 - Вправо 4 - Влево При выполнении каждой такой команды Робот перемещается в соседнюю клетку в указанном направлении. Если же в этом направлении между клетками стоит стена, то Робот разрушается. В какой клетке должен находиться исполнитель Робот, чтобы после выполнения алгоритма 3241 в неё же и вернуться? А В
  • 22. Опорный конспект ДискретностьДискретность Свойства алгоритмаСвойства алгоритма ПонятностьПонятность ОпределённостьОпределённость РезультативностьРезультативность МассовостьМассовость Алгоритм - это предназначенное для конкретного исполнителя описание последовательности действий, приводящих от исходных данных к требуемому результату, которое обладает свойствами дискретности, понятности, определённости, результативности и массовости.
  • 23. Электронные образовательные ресурсы 1. http://school-collection.edu.ru/catalog/res/07e215ef-cd48-450d-8cf4-f5777cd832b2/? interface=catalog – решето Эратосфена 2. http://files.school-collection.edu.ru/dlrstore/58e9a0c3-11df-4c94-a5eb- b0a7b359ea35/9_32.swf - исполнители алгоритмов