Основы алгоритмизации и программирования
Алгоритм. Свойства алгоритма. Исполнители. Алгоритм - это чёткое описание последовательности действий, которые должен выполнить исполнитель для достижения конкретной цели. Примеры: 1) кулинарные рецепты 2) правило решения квадратного уравнения. 3) инструкция по подключению Интернета… Алгоритм содержит несколько шагов. Шаг – отдельное законченное действие. Алгоритм – понятное и точное предписание исполнителю совершить определенную последовательность действий для достижения поставленной цели за конечное число шагов.
Историческая справка Происхождение термина «алгоритм» связывают с именем великого узбекского математика и астронома аль-Хорезми (жившего в 9 веке). Он в своих трудах по арифметике и алгебре разработал правила выполнения четырёх арифметических операций над многозначными десятичными числами. Эти правила определяют последовательность действий, которые необходимо выполнить, чтобы получить сумму чисел, произведение и т. д. Первоначально только эти правила и назывались алгоритмами. В дальнейшем термин «алгоритм» стали использовать вообще для обозначения последовательности действий, приводящей к решению проблемы.
Свойства алгоритма Дискретность (прерывность, раздельность) – разбиение алгоритма на шаги; Понятность – каждый шаг алгоритма должен быть понятен исполнителю; из СКИ Точность (определенность, детерминированность) - правильный порядок выполнения действий и команды, однозначно понимаемые исполнителем Результативность - получение результата за конечное число шагов; Массовость – использование алгоритма для решения однотипных задач.
Будет ли следующий набор действий алгоритмом? –Налить воду в чашку, добавить заварку, вскипятить воду. –Измерить длины двух сторон треугольника, измерить градусную меру угла между этими сторонами, вычислить половину произведения сторон на синус угла между ними, (какую задачу решают с помощью этого алгоритма?). –Определить значение а, в, с, вычислить Х1, Х2, сравнить дискриминант с нулём, определить количество корней, дать ответ: уравнение имеет … корней, Х = ….. В каком порядке нужно выполнить набор действий в этой задаче, чтобы получить алгоритм?
Исполнители алгоритмов. Исполнитель - это объект, умеющий выполнять определенный набор действий (человек, животное, робот, компьютер). Система команд исполнителя (СКИ) – это все команды, которые исполнитель умеет выполнять. Среда исполнителя – обстановка, в которой функционирует исполнитель.
1. Составить алгоритм, с помощью которого можно научить ребёнка открывать дверь ключом А) Достать ключ. Б) Вставить ключ в замочную скважину. В) Повернуть ключ два раза против часовой стрелки. Г) Вынуть ключ. 2. Составить алгоритм нахождения периметра прямоугольника. 3. Разведывательный дозор в составе двух человек подошёл к реке. Мост был разрушен, а река слишком глубока и широка, чтобы переправится вплавь. Около берега в маленькой лодке проплывали 2 мальчика. Как переправится в этой лодке через реку, если она может выдержать либо одного взрослого, либо двух детей? Составьте алгоритмы решения следующих задач:
Формальное исполнение алгоритма. Исполнитель может выполнять алгоритмы, не вникая в содержание задачи, а только строго выполняя последовательность действий. Например, возведение в степень числа 5 может выполнить учащийся 4 – го класса если алгоритм составлен соответствующим образом. Компьютер является исполнителем формально выполняющим алгоритм.
Алгоритм для компьютера должен быть написан на машинном языке. Перевод на машинный язык осуществляют специальные программы – трансляторы. Человек составляет алгоритм для компьютера на языке программирования (Basic, Pascal, Delphi). Алгоритм записанный на языке программирования (формальном языке) называется программой. Он состоит из отдельных шагов – команд (операторов).
Способы описания алгоритма. 1. На естественном языке. 2. В виде блок – схемы. 3. На специальном языке для записи алгоритмов. 4. программный (тексты на языках программирования).
Блок – схема алгоритма Схема алгоритма представляет собой систему связных геометрических фигур. Каждая фигура означает один этап процесса решения задачи и называется блоком. Порядок выполнения этапов указывается стрелками, соединяющими блоки. - начало, конец обработки данных, пуск, останов - ввод, вывод данных - Процесс, вычислительное действие - Решение, проверка условия - Модификация, блок цикла со счетчиком
Запись линейного алгоритма в виде блок-схемы : действие 1 действие n … начало конец Ввод данных Вывод результата Линейный алгоритм – это алгоритм, в котором команды выполняются последовательно одна за другой.
Вывод с конец начало введи a,b a=5, b=6 c = a + b введи a,b a=5, b=6 начало S = a * b Вывод S конец
P:=(a+b+c)/2 начало A, B, C P, S конец Написать алгоритм вычисления площади треугольника по трем сторонам пользуясь формулой Герона.
Линейный алгоритм. Линейным алгоритмом называют алгоритм, в котором команды выполняются последовательно одна за другой. Например: А) Достать ключ. Б) Вставить ключ в замочную скважину. В) Повернуть ключ два раза против часовой стрелки. Г) Вынуть ключ. 2. Алгоритм вычисления значения У по формуле У=(7Х+4)(2Х-2) при Х=3. Составьте алгоритм самостоятельно, выделяя каждое действие как отдельный шаг. 3. Вычислите площадь треугольника по формуле Герона, если заданы длины его сторон а, в, с. 4. Составить блок – схему алгоритма вычисления значения выражения: выделяя каждое арифметическое действие в отдельный блок. Выполните полученный алгоритм по шагам при x = 0; - 1; 3.
Сформулируйте следующие понятия: определение алгоритма; исполнители алгоритмов; система команд исполнителя формальное исполнение алгоритма; свойства алгоритма; способы записи алгоритма; блок – схема алгоритма; назначение основных блоков блок – схемы; линейный алгоритм;