- Понятие алгоритма. Виды алгоритмов
- Алгоритм виды свойства способ представления алгоритма
- Алгоритмы и их свойства.
- Свойства алгоритмов
- Способы представления алгоритмов
- Алгоритм. Его виды и свойства
- Презентация к уроку
- Ход урока
- Понятие алгоритма
- Свойства алгоритма
- Виды алгоритма
- Цикл с известным числом повторений
- Цикл с постусловием
- Цикл с предусловием
Понятие алгоритма. Виды алгоритмов
Существует несколько определений понятия алгоритма. Приведем два самых распространенных.
Алгоритм – последовательность чётко определенных действий, выполнение которых ведёт к решению задачи. Алгоритм, записанный на языке машины, есть программа решения задачи.
Алгоритм – это совокупность действий, приводящих к достижению результата за конечное число шагов.
Вообще говоря, первое определение не передает полноты смысла понятия алгоритм. Используемое слово «последовательность» сужает данное понятие, т.к. действия не обязательно должны следовать друг за другом – они могут повторяться или содержать условие.
- Дискретность (от лат. discretus — разделенный, прерывистый) – это разбиение алгоритма на ряд отдельных законченных действий (шагов).
- Детерминированность (от лат. determinate — определенность, точность) — любое действие алгоритма должно быть строго и недвусмысленно определено в каждом случае. Например, алгоритм проезда к другу, если к остановке подходят автобусы разных маршрутов, то в алгоритме должен быть указан конкретный номер маршрута 5. Кроме того, необходимо указать точное количество остановок, которое надо проехать, скажем, три.
- Конечность – каждое действие в отдельности и алгоритм в целом должны иметь возможность завершения.
- Массовость – один и тот же алгоритм можно использовать с разными исходными данными.
- Результативность – алгоритм должен приводить к достоверному решению.
Основная цель алгоритмизации – составление алгоритмов для ЭВМ с дальнейшим решением задачи на ЭВМ.
- Любой прибор, купленный в магазине, снабжается инструкцией по его использованию. Данная инструкция и является алгоритмом для правильной эксплуатации прибора.
- Каждый шофер должен знать правила дорожного движения. Правила дорожного движения однозначно регламентируют поведение каждого участника движения. Зная эти правила, шофер должен действовать по определенному алгоритму.
- Массовый выпуск автомобилей стал возможен только тогда, когда был придуман порядок сборки машины на конвейере. Определенный порядок сборки автомобилей – это набор действий, в результате которых получается автомобиль.
Существует несколько способов записи алгоритмов. На практике наиболее распространены следующие формы представления алгоритмов:
- словесная (запись на естественном языке);
- псевдокоды (полуформализованные описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.);
- графическая (изображения из графических символов – блок-схема);
- программная (тексты на языках программирования – код программы).
Рассмотрим подробно каждый вариант записи алгоритмов на примере следующей задачи. Требуется найти частное двух чисел.
Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке. Ответ при этом получает человек, который выполняет команды согласно словесной записи.
Пример словесной записи:
- задать два числа, являющиеся делимым и делителем;
- проверить, равняется ли делитель нулю;
- если делитель не равен нулю, то найти частное, записать его в ответ;
- если делитель равен нулю, то в ответ записать «нет решения».
Словесный способ не имеет широкого распространения, так как такие описания: строго не формализуемы; страдают многословностью записей; допускают неоднозначность толкования отдельных предписаний.
Псевдокод занимает промежуточное место между естественным и формальным языками. С одной стороны, он близок к обычному естественному языку, поэтому алгоритмы могут на нем записываться и читаться как обычный текст. С другой стороны, в псевдокоде используются некоторые формальные конструкции и математическая символика, что приближает запись алгоритма к общепринятой математической записи. В псевдокоде не приняты строгие синтаксические правила для записи команд, присущие формальным языкам, что облегчает запись алгоритма на стадии его проектирования и дает возможность использовать более широкий набор команд, рассчитанный на абстрактного исполнителя. Однако в псевдокоде обычно имеются некоторые конструкции, присущие формальным языкам, что облегчает переход от записи на псевдокоде к записи алгоритма на формальном языке. Ответ при этом получает человек, который выполняет команды согласно псевдокоду.
Приведем основные управляющие структуры псевдокода в табл. 1.1.
Источник
Алгоритм виды свойства способ представления алгоритма
Различают следующие виды алгоритмов :
линейный – список команд (указаний), выполняемых последовательно друг за другом;
разветвляющийся – алгоритм, содержащий хотя бы одну проверку условия, в результате которой обеспечивается переход на один из возможных вариантов решения;
циклический – алгоритм, предусматривающий многократное повторение одной и той же последовательности действий. Количество повторений обусловливается исходными данными или условием задачи.
Любая алгоритмическая конструкция может содержать в себе другую конструкцию того же или иного вида, т. е. алгоритмические конструкции могут быть вложенными. Рассмотрим следующие способы описания алгоритма: словесное описание, псевдокод, блок-схема, программа.
Словесное описание представляет структуру алгоритма на естественном языке. Например, любой прибор бытовой техники (утюг,электропила, дрель и т.п.) имеет инструкцию по эксплуатации, т.е.словесное описания алгоритма, в соответствии которому данный прибор должен использоваться. Никаких правил составления словесного описания не существует. Запись алгоритма осуществляется в произвольной форме на естественном, например, русском языке. Этот способ описания не имеет широкого распространения, так как строго не формализуем (под «формальным» понимается то, что описание абсолютно полное и учитывает все возможные ситуации, которые могут возникнуть в ходе решения); допускает неоднозначность толкования при описании некоторых действий; страдает многословностью.
1. определить температуру воздуха
2. если температура ниже 0, то надеть шубу, иначе надеть куртку
Псевдокод — описание структуры алгоритма на естественном, частично формализованном языке, позволяющее выявить основныеэтапы решения задачи, перед точной его записью на языке программирования. В псевдокоде используются некоторые формальные конструкции и общепринятая математическая символика. Строгих синтаксических правил для записи псевдокода не существует. Это облегчает запись алгоритма при проектировании и позволяет описать алгоритм, используя любой набор команд. Однако в псевдокоде обычно используются некоторые конструкции, присущие формальным языкам, что облегчает переход от псевдокода к записи алгоритма на языке программирования. Единого или формального определения псевдокода не существует, поэтому возможны различные псевдокоды, отличающиеся набором используемых слов и конструкций.
Блок-схема — описание структуры алгоритма с помощью геометрических фигур с линиями-связями, показывающими порядок выполнения отдельных инструкций. Этот способ имеет ряд преимуществ. Благодаря наглядности, он обеспечивает «читаемость»алгоритма и явно отображает порядок выполнения отдельных команд. В блок-схеме каждой формальной конструкции соответствует определенная геометрическая фигура или связанная линиями совокупность фигур.
Описания алгоритма в словесной форме, на псевдокоде или в виде блок-схемы допускают некоторый произвол при изображении команд. Вместе с тем они настолько достаточны, что позволяет человеку понять суть дела и исполнить алгоритм. На практике исполнителями алгоритмов выступают компьютеры. Поэтому алгоритм, предназначенный для исполнения на компьютере, должен быть записан на «понятном» ему языке, такой формализованный язык называют языком программирования .
Источник
Алгоритмы и их свойства.
В IX ст. узбекский математик Мухаммед, уроженец Хорезма (по арабски “ аль-хорезме”), разработал правила выполнения четырех арифметических действий над числами в десятичной системе исчисления. Множество этих правил назвали алгоритмом (algorithmi — от латинского написания имени аль-хорезме), а потом словом “алгоритм” начали обозначать совокупность правил определенного вида, а не только правил выполнения арифметических действий.
Алгоритм— это упорядоченный законченный набор четко определенных правил для решения задач за конечное количество шагов.
Говоря об алгоритмах, необходимо рассмотреть источники их возникновения.
Первый источник — это практика, наша повседневная жизнь, которая предоставляет возможность, а иногда и требует получать алгоритмы путем описания действий из решения разных задач. Такие алгоритмы называются эмпирическими.
Второй источник — это наука. Из ее теоретических положений и установленных фактов могут быть выведены алгоритмы. Так, на основе теоретических законов можно построить алгоритмы для управления разными технологическими процессами.
Третьим источником являются разные комбинации и модификации уже имеющихся алгоритмов. Примерами алгоритмов являются правила приготавливания лекарства в аптеке, инструкции принятия лекарства, процесс лечения больного и т.п..
Свойства алгоритмов
Любой алгоритм должен иметь такие основные свойства:
Определенность. Алгоритм не должен содержать указаний, содержание которых может быть воспринято неоднозначно. Кроме того, после выполнения очередного указания алгоритма не должны возникать никаких разногласий относительного того, какое указание будет выполняться следующим. Иначе говоря, при выполнении алгоритма никогда не должна появляться потребность в принятии любых решений, которые непредусмотрены составителем алгоритма.
Массовость.Алгоритм составляется не для решения одной конкретной задачи, а для целого класса задач одного типа. В простом случае эта вариативность алгоритма обеспечивает возможность использования разных допустимых исходных данных.
Дискретность. Процесс, который описывается алгоритмом, должен быть разделен на последовательность отдельных действий. Описания, которые при этом возникают, представляют собой последовательность четко разделенных друг от друга указаний, которые образовывают дискретную структуру алгоритмического процесса — лишь выполнив требования одного указания, можно перейти к следующему.
Результативность– обязательное свойство алгоритмов. Её суть состоит в том, что при точном выполнении всех указаний алгоритма процесс принятия решения (получение результата) должен закончиться через конечное количество шагов и при этом должен быть получен ответ на поставленные в задачи вопросы.
Способы представления алгоритмов
Существует несколько способов представления алгоритмов: словесный, символический, графический.
Словесный способзаключается в описи алгоритма в терминах какого либо языка. Данный способ применяется редко, поскольку запись при этом довольно громоздкая и могут возникнуть противоречивые толкования алгоритма.
Символический способзаключается в записи алгоритма с помощью условных символов. Данный способ представления алгоритма делает запись алгоритма очень кратким, и не наглядным.
Графический способ– изображение алгоритма в виде структурной схемы, которая состоит из отдельных блоков. Этот способ представления алгоритма есть наиболее удобным и наглядным.
При представлении задачи графическим способом применяют такие основные виды блоков:
Блок в виде прямоугольника символизирует выполнение определенных указаний задачи. Стрелками обозначается направление хода выполнения условий задачи.
Блок в виде ромба символизирует проверку выполнения определенного утверждения с целью принятия решения о направлении хода дальнейшего выполнения условия задачи. Внутри блока описывается условие, которое требуется проверить. Возможные операции указываются на выходах — линиях, которые выходят из блока.
Начало и конец алгоритма изображаются в виде овальных блоков.
Если существует потребность свести несколько линий в одну, то используют соединительный круг.
При составлении структурной схемы алгоритма составитель должен придерживаться следующих правил, так называемых правил для составления структурной схемы алгоритма:
Любой алгоритм должен иметь начало и конец
Все блоки, кроме проверки условия, имеют только один выход.
Все блоки алгоритма имеют не больше одного входа.
Линии алгоритма не могут разветвляться.
Типы алгоритмов и их структурные схемы
Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.
Источник
Алгоритм. Его виды и свойства
Презентация к уроку
Цель урока: Формирования у учащихся правильного понимания алгоритмов, их свойств, видов и практических навыков составления алгоритмов.
Задачи урока:
Дидактические: Обеспечить условия:
- для изучения и закрепления основных понятия по теме;
- для усвоения, закрепления темы.
Воспитательные: Обеспечить условия:
- для воспитания чувства коллективизма и взаимопомощи, культуры общения;
- для критического отношения к своему труду, умение оценивать его.
Развивающие: Обеспечить условия:
- для развития мыслительной деятельности учащихся, умения анализировать, сравнивать, обобщать и делать выводы;
- для развития самостоятельности, логического изложения мыслей.
Демонстрационный материал к уроку:
- Мультимедийная презентация
- Портрет Мухаммеда Бен Муссы аль-Хорезми.
Ход урока
- Организационный момент. (2 мин.)
- Актуализация знаний. Постановка учебной задачи. (3 мин.)
- Изложение нового материала. (30 мин.)
- Закрепление нового материала (10 мин.)
Понятие алгоритма
Появление алгоритмов связывают с зарождением математики.
Более 1000 лет назад (825 г.)ученый из города Хорезма Абдулла (или Абу Ждафар) Мухаммед бен Мусса аль-Хорезми создал книгу по математике, в тором описал способы выполнения арифметических действий над многозначными числами.
Алгоритм – описание последовательности действий, исполнение которых приводит к решению поставленной задачи за конечное число шагов.
Алгоритм — понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящих от исходных данных к искомому результату.
Свойства алгоритма
- Дискретность
- Детерминированность
- Массовость
- Результативность
- Конечность
- Дискретность (от лат.Discretus–разделенный , прерывистый) – это свойство предполагает, что любой алгоритм должен состоять из последовательности шагов, следующих друг за другом.
- Детерминированность (от лат. Determinate – определенность, точность) — это свойство указывает, что любое действие в алгоритме должно быть строго и недвусмысленно определенно и описано для каждого случая.
- Массовость – это свойство подразумевает, что один и тот же алгоритм может применяться для решения целого класса задач, отличающихся исходными данными.
- Результативность (конечность) алгоритма — исполнение алгоритма должно закончиться за конечное число шагов.
Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке.
Пример: Алгоритм «Зарядка»
- Потянитесь, лежа в постели.
- Сядьте на кровати, поставив ноги на пол.
- Нагнитесь вперед, пытаясь достать руками пальцы ног.
- Выгните спину дугой.
- Сосчитайте до 10.
- Вернитесь в исходное положение.
При словесно-формульном способе алгоритм записывается в виде текста с формулами по пунктам, определяющим последовательность действий.
Пусть, например, необходимо найти значение следующего выражения:
Словесно-формульным способом алгоритм решения этой задачи может быть записан в следующем виде:
- Ввести значения а и х.
- Сложить х и 6.
- Умножить а на 2.
- Вычесть из 2а сумму (х+6).
- Вывести у как результат вычисления выражения.
При графическом представлении алгоритм изображается в виде последовательности связанных между собой функциональных блоков, каждый из которых соответствует выполнению одного или нескольких действий.
Виды алгоритма
Линейный алгоритм – это такой, в котором все операции выполняются
последовательно одна за другой.
Пример: Алгоритм посадки дерева.
- Выкопать в земле ямку;
- Опустить в ямку саженец;
- Засыпать ямку с саженцем землей;
- Полить саженец водой.
Разветвляющийся алгоритм – это алгоритм в котором выполняется либо одна, либо другая группа действий в зависимости от истинности или ложности условия.
Полная форма
Если , то , иначе
Неполная форма
Пример: Если на улице дождь, то останемся дома, а если нет то идем гулять.
Циклический алгоритм – действия повторяются до тех пор, пока выполняется заданное условие.
Цикл с известным числом повторений
Цикл с известным числом повторений часто называют «циклом ДЛЯ»
Пример: Алгоритм «Упражнение для глаз»
- Возьмите карандаш.
- Установите его в исходное положение у кончика носа
- Повторите 10 раз, следя за движение карандаша:
- Переместите карандаш на расстояние вытянутой руки;
- Верните карандаш в исходное положение
- Положите карандаш
- Конец алгоритма
Цикл с постусловием
Цикл с неизвестным числом повторений, в тором выход из цикла осуществляется при выполнении условия, принято называть «циклом с постусловием» или «циклом ПРИ»
- Удобно положите левую руку ладонью вверх.
- Два пальца правой руки положите на запястье левой руки.
- Заметьте положение секундной стрелки
- Сосчитайте очередной удар
- Посмотрите на часы
- Если секундная стрелка прошла полный круг, то закончите действия, иначе перейдите к п.4
Цикл с предусловием
Цикл с известным числом повторений, в котором цикл продолжается, пока выполняется условие, принято называть «циклом с предусловием» или «циклом ПОКА»
- Подойдите к бочке
- Если бочка неполна (есть место для воды) , то перейдите к п.3, иначе конец алгоритма.
- Наберите ведро воды
- Вылейте ведро в бочку
- Перейдите к п.2.
Источник