Презентация по информатике на тему Основные алгоритмические структуры
Основные алгоритмические структуры.9 классУрок 10
Алгоритм - это предназначенное для конкретного исполнителя описание последовательности действий, приводящих от исходных данных к требуемому результату, которое обладает свойствами:дискретностипонятностиопределённостирезультативностимассовости
Исполнитель алгоритмаИсполнитель - это некоторый объект (человек, животное, техническое устройство), способный выполнять определённый набор команд.Формальный НеформальныйИсполнитель Круг решаемых задачСреда исполнителяРежимы работыНепосредственное управлениеПрограммное управлениеОбласть, обстановка, условияИсполнители алгоритмовСКИ
Свойства алгоритмаСвойства алгоритмаПуть решения задачиразделён на отдельные шагиАлгоритм состоит изкоманд, входящих в СКИКоманды понимаютсяоднозначно Обеспечивается получение ожидаемого результатаОбеспечивается решениезадач с различными исходнымиданнымиДискретность Понятность Определённость Результативность Массовость
Определение объектов, указанных в задачеРазработка алгоритма Установление свойствобъектов, отношенийи действий с объектамиОпределение исходных данных и результатаОпределение последовательностидействий Запись последовательностидействий с помощьюкоманд СКИ Алгоритм – модель деятельности исполнителя алгоритмовРазработка алгоритма
Основные способы записи алгоритмаСловесныеГрафическиеНа алгоритмических языкахСловесное описаниеПострочная записьПоследователь-ность рисунковСтруктурограммаШкольный алгоритмическийязыкЯзык программирова-нияБлок-схема
Основные алгоритмические конструкцииДля записи любого алгоритма достаточно трёх основных алгоритмических конструкций:следования, ветвления, повторения. (Э. Дейкстра)Эдсгер Вибе Дейкстра (1930–2002). Выдающийся нидерландский учёный, идеи которого оказали огромное влияние на развитие компьютерной индустрии.
Следование Следование - алгоритмическая конструкция, отображающая естественный, последовательный порядок действий. Алгоритмы, в которых используется только структура «следование», называются линейными алгоритмами.Действие 1Действие 2Алгоритмическая структура «следование»
НачалоСтоловую ложку сушёных плодовшиповника измельчить в ступкеЗалить стаканом кипячёной водыКипятить 10 минут на слабом огнеОхладитьПроцедитьКонецЛинейный алгоритм приготовления отвара шиповника
х:=2у:=х*ху:=у*ух:=у*хs:=x+yШаг алгоритмаПеременные xys123452242323216164816-----Вычисления по алгоритмуАлгоритмОтвет: s = 48
ВетвлениеВетвление - алгоритмическая конструкция, в которой в зависимости от результата проверки условия («да» или «нет») предусмотрен выбор одной из двух последовательностей действий (ветвей). Алгоритмы, в основе которых лежит структура «ветвление», называют разветвляющимися.
Полная форма ветвленияДействие 1УсловиеДействие 2если <условие> то <действие 1> иначе <действие 2>всеПример алг правописание частиц НЕ, НИнач если частица под ударением то писать НЕ иначе писать НИ всеконДаНет
Неполная форма ветвленияДействие 1Условиеесли <условие> то <действие 1>всеПример:алг сборы на прогулку нач если на улице дождь то взять зонтик всеконДаНет
Операции сравненияA < BА меньше ВA <= BА меньше или равно ВA = BА равно ВA > BА больше ВA >= BА больше или равно ВA <> BА не равно В
Вычисление функции f(x)=|x| НачалоСписок данныхX, Y -вещХХ>0Y:=XY:=-XYКонецданет
Простые и составные условияПростые условия состоят из одной операции сравнения. Составные условия получаются из простых с помощью логических связок and (и), or (или), not (не).Пример. Алгоритм определения принадлежности точки Х отрезку [A; B]. A, B, X(X>=A) and (X<=B)ДАНЕТданетОтвет: ПринадлежитA=2X=4B=6Ответ: Не принадлежитB=4X=6
ШагКонстанты Переменная Условие АВСY1030201234103030 > 10 (Да)20 > 30 (Нет)Y = AB >Y C >Y Y = BНаибольшая из 3-х величинПеременной Y присваивается значение большей из трёх величин A, B и C.Y:=AB>YY:=BY:=CC>YданетданетОтвет: Y = 30
Решение линейного уравнения ax + b = 0Корней нетСписок данныхa, b, x - вещ a, ba<>0x:=-b/ab<>0Любое числонетдаданет
ПовторениеПовторение - последовательность действий, выполняемых многократно. Алгоритмы, содержащие конструкцию повторения, называют циклическими или циклами. Последовательность действий, многократно повторяющаяся в процессе выполнения цикла, называется телом цикла.
Цикл с заданным условием продолжения работы (цикл-ПОКА, цикл с предусловием)Тело циклаУсловие данет нц пока <условие> <тело цикла (последовательность действий)> кц
Цикл с заданным условием окончания работы (цикл-ДО, цикл с постусловием) Тело циклаУсловиеданетЗапись на алгоритмическом языке: нц <тело_цикла (последовательность действий)> кц при <условие>
Цикл с постусловиемПример. Алгоритм по выучиванию наизусть четверостишия. алг четверостишие нач нц прочитать четверостишие по книге 1 раз прочитать четверостишие наизусть кц при не сделал ошибку кон
Вычисление значения переменной bКонецданетНачалоСписок данныхa, b - целa := 1 b := 1a = 8a := a *2 b := b +ab
Таблица значений переменныхШаг алгоритмаОперация Переменные Условие aba = 81a := 12b := 13a := a * 24b := b+a5a = 86a := a * 27b := b+a8a = 89a := a * 210b := b+a11a = 82 = 8 (Нет)4 = 8 (Нет)8 = 8 (Да)1122448811377153
Задача о тренировкахКонецданетНачалоСписок данныхi – целx – вещi := 1 x := 10x>= 25i := i +1 x := x +0.1*xiПлан тренировок:В 1-й день пробежать 10 км.Каждый следующий день увеличивать расстояние на 10% от результата предыдущего дня. Как только дневной пробег достигнет или превысит 25 км, прекратить увеличение и пробегать 25 км ежедневно. Начиная с какого дня спортсмен будет пробегать 25 км?Пусть x — количество километров, которое спортсмен пробежит в некоторый i-й день. Тогда в следующий (i + 1)-й день он пробежит x + 0,1x километров (0,1x — это 10% от x).
Цикл с заданным числом повторений (цикл-ДЛЯ, цикл с параметром) Запись на алгоритмическом языке: нц для i от i1 до i2 шаг R <тело_цикла (последовательность действий)> кц Тело циклаi = i1, i2
Цикл с заданным числом повторений алг переправа нач нц для i от 1 до 5два мальчика переправляются на противоположный берег.один мальчик высаживается на берегдругой мальчик плывёт обратносолдат переправляется через рекумальчик возвращается на исходную позицию кц кон
Вопросы:1. Приведите пример линейного алгоритма. А) из литературного произведения; Б) из повседневной жизни; В) из любой предметной области, изучаемой в школе Г)
Домашнее задание:§1.2.1, 1.2.2, .1.2.3, 1.2.4, 1.2.5задание1.2, стр. 21, 1.3, стр. 23, 1.4, стр.25