Разделы презентаций


ОСНОВЫ АЛГОРИТМИЗАЦИИ

Содержание

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

Слайды и текст этой презентации

Слайд 1 ОСНОВЫ АЛГОРИТМИЗАЦИИ

ОСНОВЫ АЛГОРИТМИЗАЦИИ

Слайд 2Алгоритм – понятное и точное предписание исполнителю выполнить конечную последовательность

команд, приводящую от исходных данных к конечному результату
Алгоритм – основное

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

Слайд 3Исполнитель алгоритма.
Исполнитель алгоритма — это некоторая абстрактная или реальная

(техническая, био-логическая или биотехническая) система, способная выполнить действия, предписыва- емые алгоритмом.


Исполнитель алгоритма. Исполнитель алгоритма — это некоторая абстрактная или реальная (техническая, био-логическая или биотехническая) система, способная выполнить

Слайд 4Свойства алгоритма:
Понятность
Точность
Упорядоченность
Конечность
Дискретность
Эффективность
Массовость

Свойства алгоритма:Понятность Точность УпорядоченностьКонечность ДискретностьЭффективностьМассовость

Слайд 5Свойства алгоритма:
Понятность – алгоритм должен состоять только из тех команд,

которые входят в СКИ.
Точность (определённость, детерминированность) – каждая команда должна

быть истолкована исполнителем однозначно
Упорядоченность – строго определённый порядок выполнения действий
Свойства алгоритма:Понятность – алгоритм должен состоять только из тех команд, которые входят в СКИ.Точность (определённость, детерминированность) –

Слайд 6Свойства алгоритма:
Конечность (финитность, результативность) – выполнение алгоритма должно приводить к

решению задачи за конечное число шагов или за конечное число

шагов должно быть выдано сообщение, что задача решения не имеет.
Дискретность –процесс решения задачи представляет последовательное выполнение простых (или ранее определенных) шагов.
Свойства алгоритма:Конечность (финитность, результативность) – выполнение алгоритма должно приводить к решению задачи за конечное число шагов или

Слайд 7Свойства алгоритма:
Эффективность – решение задачи за приемлемое для разработчика время


Массовость – означает, что алгоритм разработан в общем виде, для

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

Слайд 8Способы записи алгоритма:
словесная – запись на естественном языке;
графическая –

с помощью блок-схем, диаграмм Насси-Шнейдермана, языка ДРАКОН;
псевдокоды – полуформализованные

описания на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.;
программная – тексты на языках программирования.

Способы записи алгоритма:словесная – запись на естественном языке; графическая – с помощью блок-схем, диаграмм Насси-Шнейдермана, языка ДРАКОН;

Слайд 9Основные алгоритмические структуры

следование
ветвление
цикл
Это предположение высказано в

1965 г. Э. Дейкстрой, в том же году итальянские математики

К. Бом и Д. Джакопини сформулировали теорему о структурности :
Логическая структура любого алгоритма может быть представлена комбинацией трех базовых структур:
Основные алгоритмические структуры  следование ветвление циклЭто предположение высказано в 1965 г. Э. Дейкстрой, в том же

Слайд 10Линейный алгоритм
Структура «следование» представляет собой ряд действий, следующих одно

за другим:

Линейный алгоритм Структура  «следование»  представляет собой  ряд действий,  следующих  одно за другим:

Слайд 11 Понятие о логическом выражении
Логическое выражение – запись, содержащая логические

переменные, логические константы и логические операции.

Логическое выражение также может принимать

только одно из двух значений (ИСТИНА или ЛОЖЬ), это значение может быть вычислено, если известня значения всех входящих в него логических переменных.


Понятие о логическом выражении	Логическое выражение – запись, содержащая логические переменные, логические константы и логические операции.	Логическое выражение

Слайд 12 Использование логических выражений
Применение логических переменных и логических выражений позволяет

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



Вместе с тем, для организации ветвления, а также цикла, необходимо использовать логические выражения.

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

Слайд 13Разветвляющийся алгоритм
Разветвляющимся называют алгоритм, в котором в зависимости от истинности

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

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

Слайд 14Разветвляющийся алгоритм
Полное ветвление Неполное ветвление

Разветвляющийся алгоритмПолное ветвление			Неполное ветвление

Слайд 15Пример 1: Определить, попадает ли точка A(X0,Y0) в круг с

радиусом R с центром в начале координат?

Пример 1: Определить, попадает ли точка A(X0,Y0) в круг с радиусом R с центром в начале координат?

Слайд 16Пример 2: Заданы три числа (a, b, c). Существует ли

треугольник с такими сторонами?

Логическое выражение, истинное тогда, и только тогда,

когда треугольник существует:
a
Логическое выражение, истинное тогда, и только тогда, когда треугольник НЕ существует:
ab+с ИЛИ ba+с ИЛИ ca+b (достаточно, чтобы выполнялось любое из условий)
Пример 2: Заданы три числа (a, b, c). Существует ли треугольник с такими сторонами?		Логическое выражение, истинное тогда,

Слайд 17 Пример 2: Ветвление. Составное логическое выражение

Пример 2: Ветвление.  Составное логическое выражение

Слайд 18 Пример 2: Вложенное ветвление. Простые логические выражения

Пример 2: Вложенное ветвление.  Простые логические выражения

Слайд 19 Резюмируя пример 2
Одна и та же несложная задача может

быть решена большим количеством способов.

Например, можно использовать линейный алгоритм

и одно из двух составных логических выражений (слайд 13), следует только соответствующим образом сформулировать вопрос.

При использовании ветвления можно также использовать одно из двух составных логических выражений (слайд 14), а можно – несколько вложенных друг в друга развилок (слайд 15). При этом неравенства также можно заменить на противоположные по смыслу.
Резюмируя пример 2	Одна и та же несложная задача может быть решена большим количеством способов. 		Например, можно

Слайд 20 Резюмируя пример 2
Следует отметить, что в зависимости от набора

данных второй способ (слайд 15) может потребовать от одной до

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

Слайд 21Пример 3: Найти наибольшее среди трёх чисел (полное ветвление)

Пример 3: Найти наибольшее среди трёх чисел  (полное ветвление)

Слайд 22Пример 3: Найти наибольшее среди трёх чисел (неполное ветвление, используются

составные логические выражения)

Пример 3: Найти наибольшее среди трёх чисел   (неполное ветвление,  используются   составные

Слайд 23Пример 3: Найти наибольшее среди трёх чисел (полное и неполное ветвление)
стоп
ввод

x, y, z
пуск
вывод Max
x>y

+

Max:=x
Max:=z
Мах

Пример 3: Найти наибольшее среди трёх чисел  (полное и  неполное  ветвление)стопввод x, y, zпусквывод

Слайд 24 Резюмируя пример 3
Первый способ (слайд 18) решения задачи достигает

цели за два ветвления (хотя всего развилок – три). При

составлении такого алгоритма следует чётко осознавать, какие условия должны быть вписаны во вложенные развилки, иначе алгоритм может содержать ошибку. Зато нет необходимости записывать составные логические выражения.

Второй способ (слайд 19) достигает цели за три ветвления, условия могут быть перечислены в произвольном порядке, поэтому многим этот способ кажется проще. Однако при этом нужно применять составные условия.

Резюмируя пример 3	Первый способ (слайд 18) решения задачи достигает цели за два ветвления (хотя всего развилок

Слайд 25 Резюмируя пример 3
Третий способ (слайд 20) так же, как

и первый, достигает цели за две развилки, но для определённых

наборов данных одна из ветвей не требует никаких действий (неполное ветвление).

Этот способ может быть модифицирован для поиска максимума среди произвольной последовательности чисел – достаточно положить в Максимум первое число, а затем до тех пор, пока не закончились числа, сравнивать их с Максимумом и в случасе необходимости – затирать Максимум очередным числом
Резюмируя пример 3	Третий способ (слайд 20) так же, как и первый, достигает цели за две развилки,

Слайд 26Пример 4: Вычислить значение функции

Пример 4: Вычислить значение функции

Слайд 27Пример 4: Вычислить значение функции
(полное ветвление, в оптимальном случае –

одно ветвление, в худшем - четыре )

Пример 4: Вычислить значение функции(полное ветвление, в оптимальном случае – одно ветвление,  в худшем - четыре

Слайд 28Пример 4: Вычислить значение функции (неполное ветвление, составные условия, проходит через

все пять развилок)

Пример 4: Вычислить значение функции (неполное ветвление, составные условия, проходит через все пять развилок)

Слайд 29 Резюмируя пример 4
Первый способ (слайд 24) решения задачи достигает

цели четыре ветвления в худшем случае и за одно –

в оптимальном. При составлении такого алгоритма следует следует сначала упорядочить точки x1 … x4 по возрастанию (или по убыванию).

Второй способ (слайд 25) достигает цели всегда за пять ветвлений, условия могут быть перечислены в произвольном порядке, поэтому многим этот способ кажется проще. Однако алгоритм требует большего количества действий.
Резюмируя пример 4	Первый способ (слайд 24) решения задачи достигает цели четыре ветвления в худшем случае и

Слайд 30Циклический алгоритм
Обеспечивает многократное выполнение некоторой последовательности действий, которая называется телом

цикла.
«Многократно» – не значит «бесконечно», прекращение циклической последовательности происходит

в результате проверки истинности некоторого условия
Циклический алгоритмОбеспечивает многократное выполнение некоторой последовательности действий, которая называется телом цикла. «Многократно» – не значит «бесконечно», прекращение

Слайд 31Циклический алгоритм
Цикл с предусловием
Цикл с постусловием

В зависимости от того, когда

происходит проверка, различают

Циклический алгоритмЦикл с предусловиемЦикл с постусловиемВ зависимости от того,  когда происходит проверка, различают

Слайд 32Циклический алгоритм
Проверка условия происходит перед выполнением тела цикла. Такой цикл может

не выполниться ни разу, если изначально условие было ложным.

Цикл с предусловием
Циклический алгоритм Проверка условия происходит перед выполнением тела цикла. Такой цикл  может не выполниться ни разу,

Слайд 33Циклический алгоритм
Цикл с постусловием
Проверка условия происходит после выполнения тела цикла.

Такой цикл обязательно выполнится хотя бы один раз.

Циклический алгоритмЦикл с постусловиемПроверка условия происходит после выполнения тела цикла. Такой цикл обязательно выполнится хотя бы один

Слайд 34Циклический алгоритм
Используется, если заранее известно, сколько раз необходимо выполнить тело

цикла.
p – параметр, меняется от a до b

с шагом с
a – начальное значение
b – конечное значение
с – шаг изменения параметра

Цикл с параметром (пересчёт, цикл с заданным количеством повторений)

Циклический алгоритмИспользуется, если заранее известно, сколько раз необходимо выполнить тело цикла.p – параметр, меняется от a до

Слайд 35Типовые задачи, решаемые с использованием циклов:
Нахождение суммы (произведения, среднего арифметического)

элементов некоторой последовательности
Подсчёт количества заданных элементов в последовательности
Поиск первого (последнего)

элемента последовательности, удовлетворяющего заданному условию
Поиск максимального (минимального) элемента последовательности
и другие ПЕРЕБОРНЫЕ задачи
Типовые задачи, решаемые с использованием циклов:Нахождение суммы (произведения, среднего арифметического) элементов некоторой последовательностиПодсчёт количества заданных элементов в

Слайд 36Построить алгоритм к следующей задаче: С клавиатуры вводят N чисел.

Найти их сумму.
Этапы решения
Запросить, чему равно N.
Обнулить переменную для

хранения суммы Sum.
Сделать N раз: Запросить у пользователя очередное слагаемое A Прибавить слагаемое A к сумме Sum
Вывести результат – значение Sum


Построить алгоритм к следующей задаче:  С клавиатуры вводят N чисел. Найти их сумму. Этапы решенияЗапросить, чему

Слайд 37Построить алгоритм к следующей задаче: С клавиатуры вводят несколько целых

чисел, признаком окончания является ввод нуля. Найти сумму введённых чисел
Этапы

решения:
Обнулить переменную для хранения суммы Sum.
Повторять: Запросить у пользователя очередное слагаемое A Прибавить слагаемое А к сумме Sum пока A не равно нулю
Вывести результат Sum


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

Слайд 38Построить алгоритм к следующей задаче: С клавиатуры вводят несколько целых

чисел, признаком окончания является ввод нуля. Найти произведение введённых чисел
Этапы

решения
Переменной для хранения произведения P присвоить значение 1.
Запросить у пользователя очередной множитель A.
Пока A не равно нулю Умножить произведение P на множитель А Запросить у пользователя очередной множитель A
Вывести результат Р


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

Слайд 39Построить алгоритм к следующей задаче: С клавиатуры вводят N чисел.

Найти максимальное из них
Этапы решения:
Запросить, чему равно N.
Запросить у пользователя

первое число и объявить его максимумом (положить в Мах).
Сделать N-1 раз: Запросить у пользователя очередное число A Если A больше, чем Мах, то затереть Мах значением переменной A
Вывести результат – значение Мах

Построить алгоритм к следующей задаче:  С клавиатуры вводят N чисел. Найти максимальное из нихЭтапы решения:Запросить, чему

Слайд 40Построить алгоритм к следующей задаче: С клавиатуры вводят N чисел.

Найти порядковый номер максимального из них
Этапы решения:
Запросить, чему равно N.
Запросить

у пользователя первое число и объявить его максимумом (положить в Мах). До начала поиска номер максимального элемента N_max равен 1, счётчик равен 2.
Пока счётчик не превосходит N, повторять: Запросить у пользователя очередное число A Если A больше, чем Мах, то затереть Мах значением переменной A затереть N_max значением счётчика Увеличить счётчик на 1.
Вывести результат – значение Мах

Построить алгоритм к следующей задаче:  С клавиатуры вводят N чисел. Найти порядковый номер максимального из нихЭтапы

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика