Конструирование алгоритмов. Основы алгоритмизации

Содержание

Слайд 2

Ключевые слова

последовательное построение алгоритма
вспомогательный алгоритм
формальные параметры
фактические параметры
рекурсивный

Ключевые слова последовательное построение алгоритма вспомогательный алгоритм формальные параметры фактические параметры рекурсивный алгоритм
алгоритм

Слайд 3

Последовательное построение алгоритма

Я совершенный исполнитель: всё знаю и всё умею!

Последовательное построение алгоритма Я совершенный исполнитель: всё знаю и всё умею!

Слайд 4

Последовательное построение алгоритма

Упрощение команд
постановки задачи

Задача разбивается на более простые части

Решение каждой части

Последовательное построение алгоритма Упрощение команд постановки задачи Задача разбивается на более простые
задачи формулируется
в отдельной команде (предписании)

Предписания, выходящие за пределы
возможностей исполнителя, представляют
в виде более простых команд

Не могу решить поставленную задачу!?

Слайд 5

Разработка алгоритма методом последовательного уточнения для исполнителя Робот

Робот находится в некоторой

Разработка алгоритма методом последовательного уточнения для исполнителя Робот Робот находится в некоторой
клетке горизонтального коридора. Ни одна из клеток коридора не закрашена.

Робот должен закрасить все клетки этого коридора и вернуться в исходное положение.

Слайд 6

Укрупнённый план действий Робота

1. Закраска всех клеток коридора левее исходной

2. Возвращение

Укрупнённый план действий Робота 1. Закраска всех клеток коридора левее исходной 2.
в исходное положение

3. Закраска всех клеток коридора правее исходной

4. Возвращение в исходное положение

5. Закраска исходной клетки

Начало

Конец

Слайд 7

1. Закраска всех клеток коридора, находящихся левее Робота:

Детализация плана действий Робота

влево
нц пока

1. Закраска всех клеток коридора, находящихся левее Робота: Детализация плана действий Робота
сверху стена и снизу стена
закрасить; влево
кц

Положение Робота после выполнения этого алгоритма:

Слайд 8

2. Возвращение Робота в коридор в исходную точку:

вправо
нц пока клетка закрашена

2. Возвращение Робота в коридор в исходную точку: вправо нц пока клетка
вправо
кц

Детализация плана действий Робота

Положение Робота после выполнения этого алгоритма:

Слайд 9

3. Закраска всех клеток коридора, находящихся правее Робота:

вправо
нц пока сверху стена и

3. Закраска всех клеток коридора, находящихся правее Робота: вправо нц пока сверху
снизу стена
закрасить; вправо
кц

Детализация плана действий Робота

Положение Робота после выполнения этого алгоритма:

Слайд 10

4.Возвращение Робота в коридор в исходную точку:

влево
нц пока клетка закрашена
влево
кц

5.

4.Возвращение Робота в коридор в исходную точку: влево нц пока клетка закрашена
По команде закрасить Робот закрашивает исходную точку.

Детализация плана действий Робота

Слайд 11

алг
нач
влево
нц пока сверху стена и снизу стена
закрасить; влево
кц

алг нач влево нц пока сверху стена и снизу стена закрасить; влево
вправо
нц пока клетка закрашена
вправо
кц
вправо
нц пока сверху стена и снизу стена
закрасить; вправо
кц
влево
нц пока клетка закрашена
влево
кц
закрасить
кон

Программа для Робота

Слайд 12

Вспомогательный алгоритм

Вспомогательный алгоритм - алгоритм, целиком используемый в составе другого алгоритма.

Блок

Вспомогательный алгоритм Вспомогательный алгоритм - алгоритм, целиком используемый в составе другого алгоритма.
«предопределённый процесс»

Вспомогательный алгоритм делает структуру алгоритма более простой и понятной.

Слайд 13

Алгоритм вычисления степени

y = ax, где x - целое число, a

Алгоритм вычисления степени y = ax, где x - целое число, a
0.
1 при x = 0
ax при x >0,
y =
при x <0.

Обозначим алгоритм возведения числа в степень st(a, n, y).
Это вспомогательный алгоритм.

По определению степени с целым показателем:

Слайд 14

Блок-схема решения задачи:

Блок-схема решения задачи:

Слайд 15

Формальные параметры используются при описании алгоритма.
Фактические параметры - те величины, для

Формальные параметры используются при описании алгоритма. Фактические параметры - те величины, для
которых будет исполнен вспомогательный алгоритм.
Типы, количество и порядок следования формальных и фактических параметров должны совпадать.

Формальные и фактические параметры

Слайд 16

Схема вызова вспомогательного алгоритма

Схема вызова вспомогательного алгоритма

Слайд 17

Пример. Алгоритм вычисления степени с натуральным показателем n для любого вещественного числа

Пример. Алгоритм вычисления степени с натуральным показателем n для любого вещественного числа
а, представленный в виде рекурсивного алгоритма

Рекурсивный алгоритм

Алгоритм, в котором прямо или косвенно содержится ссылка на него же как на вспомогательный алгоритм, называют рекурсивным.

Слайд 18

Снежинка Коха

Пример. Рассмотрим алгоритм построения геометрической фигуры, которая называется снежинкой Коха. Шаг

Снежинка Коха Пример. Рассмотрим алгоритм построения геометрической фигуры, которая называется снежинкой Коха.
процедуры построения состоит в замене средней трети каждого из имеющихся отрезков двумя новыми той же длины.

С каждым шагом фигура становится всё причудливее. Граница снежинки Коха - положение кривой после выполнения бесконечного числа шагов.

Начальное положение

Первый шаг

Второй шаг

Третий шаг

Слайд 19

Самое главное

Метод последовательного построения алгоритма:
исходная задача разбивается на несколько частей, каждая

Самое главное Метод последовательного построения алгоритма: исходная задача разбивается на несколько частей,
из которых проще всей задачи, и решение каждой части формулируется в отдельной команде;
если получаются команды, выходящие за пределы возможностей исполнителя, то они представляются в виде совокупности ещё более простых предписаний;
процесс продолжается до тех пор, пока все предписания не будут понятны исполнителю.
Вспомогательный алгоритм - алгоритм, целиком используемый в составе другого алгоритма.
Алгоритм, в котором прямо или косвенно содержится ссылка на него же как на вспомогательный алгоритм, называют рекурсивным.

Слайд 20

Вопросы и задания

Почему при решении сложной задачи затруднительно
сразу конкретизировать все необходимые

Вопросы и задания Почему при решении сложной задачи затруднительно сразу конкретизировать все
действия?

В чём заключается метод последовательного уточнения при построении алгоритма?

Какая связь между методом последовательного построения алгоритма и такими процессами, как написание сочинения или подготовка к многодневному туристическому походу?

Известен рост каждого из N учеников 9А класса и М учеников 9Б класса.
Опишите укрупнёнными блоками алгоритм сравнения среднего роста учеников этих классов.

В ряду из десяти клеток правее Робота некоторые клетки закрашены. Последняя закрашенная клетка может примыкать к стене.
Составьте алгоритм, который закрашивает клетки выше и ниже каждой закрашенной клетки.
Проверьте работу алгоритма в следующих случаях:

Для чего нужны вспомогательные алгоритмы?

Опишите процесс выполнения команды вызова вспомогательного алгоритма в основном алгоритме.

Сталкивались ли вы с идеей формальных и фактических параметров при изучении математики и физики?
Приведите пример.

Какие алгоритмы называют рекурсивными?
Приведите пример рекурсии из жизни.

Составьте алгоритмы, под управлением которых Робот закрасит указанные клетки.

а

б

в