Инфоурок Информатика ПрезентацииПрезентация к уроку "Понятие алгоритма".

Презентация к уроку "Понятие алгоритма".

Скачать материал
Скачать материал

Описание презентации по отдельным слайдам:

  • Понятие алгоритма. Формальное исполнение алгоритма. Основные алгоритмически...

    1 слайд

    Понятие алгоритма.
    Формальное исполнение алгоритма.
    Основные алгоритмические структуры.
    Подготовили преподаватели кафедры ООД Белгородского ГАУ
    Збинякова М.В., Мухина Н.Н.

  • Теория алгоритмов – одно из основных понятий математики и информатики. Даже п...

    2 слайд

    Теория алгоритмов – одно из основных понятий математики и информатики. Даже происхождение самого термина «алгоритм» связано с математикой. Известно, что основная особенность всех вычислений машины состоит в том, что в основе её работы лежит программный принцип управления. Это означает, что для решения как самой простой, так и самой сложной задачи пользователю необходимо использовать перечень инструкций или команд, следуя которым шаг за шагом компьютер выдаст необходимый результат. Таким образом, для того, чтобы решать задачу на компьютере, её необходимо сначала алгоритмизировать. Именно алгоритмический принцип и лежит в основе работы всех компьютеров.
    В данной лекции дадим определение термина алгоритм, рассмотрим историю его развития, виды алгоритмов и алгоритмические языки. Далее мы более подробно остановимся на теории алгоритмов и закончим применением алгоритмов в компьютере.

  • АЛГОРИТМ 
Определение понятий В старой трактовке алгори́тм - точный набор инс...

    3 слайд

    АЛГОРИТМ
    Определение понятий
    В старой трактовке алгори́тм - точный набор инструкций, описывающих последовательность действий исполнителя для достижения результата решения задачи за конечное время. По мере развития параллельности в работе компьютеров слово «последовательность» стали заменять более общим словом «порядок». Это связано с тем, что какие-то действия алгоритма должны быть выполнены только друг за другом, но какие-то могут быть и независимыми. Часто в качестве исполнителя выступает некоторый механизм (компьютер, токарный станок, швейная машина), но понятие алгоритма необязательно относится к компьютерным программам, так, например, чётко описанный рецепт приготовления блюда также является алгоритмом, в таком случае исполнителем является человек.
    Единого «истинного» определения понятия «алгоритм» нет.

  • Алгоритм – понятие фундаментальное, такое же, как «точка», «прямая», «информ...

    4 слайд

    Алгоритм – понятие фундаментальное, такое же, как «точка», «прямая», «информация». Поэтому точного и чёткого определения алгоритма не существует. Однако можно дать некое понятие алгоритма, описывающее его основные признаки.
    Алгоритм – это всякая система вычислений, выполняемых по строго определённым правилам, которая после какого- либо числа шагов заведомо приводит к решению поставленной задачи.» (А. Колмогоров)
    «Алгоритм – это точное предписание, определяющее вычислительный процесс, идущий от варьируемых исходных данных к искомому результату.» (А. Марков)
    «Алгоритм – это строго детерминированная последовательность действий, описывающая процесс преобразования объекта из начального состояния в конечное, записанная с помощью понятных исполнителю команд.» (Н.Д. Угринович)
    «Алгоритм - организованная конечная последовательность действий, понятная исполнителю, чётко и однозначно задающая процесс решения класса задач и позволяющая получить за конечное число шагов результат, однозначно определяемый исходными данными»

  • Общее в этих определениях то, что алгоритм - это предписание. Предписание дол...

    5 слайд

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

    Любой алгоритм существует не сам по себе, а предназначен для определённого исполнителя. Алгоритм описывается в командах исполнителя, который это алгоритм будет выполнять. Объекты, над которыми исполнитель может совершать действия, образуют среду исполнителя. Исходные данные и результаты любого алгоритма всегда принадлежат среде того исполнителя, для которого предназначен алгоритм.

  • Значение слова «алгоритм» очень схоже со значением слов «рецепт», «метод», сп...

    6 слайд

    Значение слова «алгоритм» очень схоже со значением слов «рецепт», «метод», способ. Однако любой алгоритм, в отличие от рецепта или способа, обязательно обладает следующими свойствами:
    Дискретность - алгоритм должен представлять процесс решения задачи как последовательное выполнение некоторых простых шагов. При этом для выполнения каждого шага алгоритма требуется конечный отрезок времени, т. е. преобразование исходных данных в результат осуществляется во времени дискретно. Можно считать, что шаги выполняются мгновенно в моменты времени t0, t1, t2…, а между этими моментами ничего не происходит.

  • Детерминированность - определённость. В каждый момент времени следующий шаг р...

    7 слайд

    Детерминированность - определённость. В каждый момент времени следующий шаг работы однозначно определяется состоянием системы: алгоритм выдаёт один и тот же результат для одних и тех же исходных данных. Результаты не зависят ни от каких случайных факторов. С другой стороны, существуют вероятностные алгоритмы, в которых следующий шаг работы зависит от текущего состояния системы и генерируемого случайного числа. Однако при включении метода генерации случайных чисел в список «исходных данных», вероятностный алгоритм становится подвидом обычного.
    Элементарность шагов означает, что объем работы, выполняемой на любом шаге, маркируется некоторой константой, зависящей от характеристик исполнителя алгоритмов, но не зависящей от входных данных и промежуточных значений, получаемых алгоритмом. Для численных алгоритмов такими элементарными шагами могут быть, например, сложение, вычитание, умножение, деление, сравнение двух 32-разрядных чисел, пересылка одного числа из некоторого места памяти в другое. К элементарным шагам не относится сравнение двух файлов, так как время сравнения зависит от длины файлов, а длина потенциально неограниченна

  • Конечность (финишность) алгоритма означает, что для получения результата нужн...

    8 слайд

    Конечность (финишность) алгоритма означает, что для получения результата нужно выполнить конечное число шагов, т. е. исполнитель в некоторый момент времени останавливается. Требуемое число шагов зависит от входных данных алгоритма и не маркируется константой.
    Понятность - алгоритм для исполнителя должен включать только те команды, которые ему (исполнителю) доступны, которые входят в его систему команд.
    Завершённость (конечность, определённость) - при корректно заданных исходных данных алгоритм должен завершать работу и выдавать результат за конечное число шагов. С другой стороны, вероятностный алгоритм может и никогда не выдать результат, но вероятность этого равна 0.

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

    9 слайд

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

    Алгоритм всегда рассчитан на выполнение «неразмышляющим» исполнителем.
    Массовость - алгоритм должен быть применим к разным наборам исходных данных.
    Результативность - завершение алгоритма определенными результатами. Если же входные данные уникальны, то алгоритм в силу свойства определенности (детерминированности) будет давать всегда один и тот же результат и само построение алгоритма теряет смысл.

  • Понятие данных (значений) - исходных, промежуточных и результата также требуе...

    10 слайд

    Понятие данных (значений) - исходных, промежуточных и результата также требует некоторого ограничительного толкования. Наиболее общее интуитивное понимание состоит в том, что данными в алгоритме могут служить самые разнообразные конструктивные объекты.
    Конструктивный объект - это строгое математическое понятие. Можно пока считать, что
    конструктивный объект - это элемент какого-либо конечного множества (например, один из дней недели), либо объект, вычисленный каким-либо алгоритмом. Конструктивными объектами являются символы, логические значения, целые и вещественные числа, представимые в машине, массивы конструктивных объектов. Алгоритм (его текст) также является конструктивным объектом и, значит, может рассматриваться как данные для другого алгоритма: текст программы (алгоритма) является входными данными для программы-транслятора.

  • Замечание об определенности и конечности: иногда считают, что алгоритм может...

    11 слайд

    Замечание об определенности и конечности: иногда считают, что алгоритм может заканчиваться без получения результата (безрезультатная остановка) или даже не заканчиваться вовсе при некоторых исходных данных (неприменимость к этим исходным данным). Взгляд на это с точки зрения теории - машины Тьюринга - обсудим позже. С практической точки зрения такая ситуация тоже требует внимания: операционная система (ОС) вычислительной машины, являясь совокупностью алгоритмов, при нормальной работе не предполагает остановки и выдачи каких-либо результатов; она лишь добросовестно получает периодически входные данные-задания и запускает их; задания-алгоритмы сами получают результаты.
    Таким образом, понятия алгоритма и данных двойственны, их определения рекурсивны: в формулировке понятия алгоритма использовались понятия данных, а они, в свою очередь, определяются с использованием понятия алгоритма, и т. д. Это определяет равную важность двух понятий в компьютерных науках, что отражается и в современных языках программирования.

  • Таким образом, ОС не выдаёт продукции, если не считать протокола её работы. Д...

    12 слайд

    Таким образом, ОС не выдаёт продукции, если не считать протокола её работы. Другие диалоговые программные системы также требуют для своего описания более широкой интерпретации понятия алгоритма: они не получают входные данные сразу и не всегда можно говорить об априорной ограниченности объёма данных некоторой константой. Однако все сказанное не умаляет важности приведённого понятия алгоритма, а говорит лишь о богатстве проблематики компьютерных наук.
    Дадим уточняющее понятие алгоритма, которое не является определением в математическом смысле слова, но более формально описывает понятие алгоритма, раскрывающего его сущность.
    Алгоритм – конечная система правил, сформулированная на языке исполнителя, которая определяет последовательность перехода от допустимых исходных данных которая определяет последовательность перехода от допустимых исходных данных к конечному результату и которая обладает свойствами дискретности, детерминированности, результативности, конечности и массовости.
    Для каждого исполнителя набор допустимых действий всегда ограничен – не может существовать исполнителя, для которого любое действие является допустимым. Перефразируя И. Канта: «Если бы такой исполнитель существовал, то среди его допустимых действий было бы создание такого камня, который он не может поднят. Но это противоречит допустимости действия «поднять любой камень».

  • Ограничение на выбор допустимых действий означает, что для любого исполнител...

    13 слайд

    Ограничение на выбор допустимых действий означает, что для любого исполнителя имеются задачи, которые нельзя решить с его помощью. При изучении алгоритмов важно разделять два понятия: запись алгоритма и выполнение алгоритма.
    Алгоритм является предписанием, а наличие предписания предполагает, что результат будет получен неким исполнителем, действующим по этому предписанию. Исполнитель (компьютер или программист, вручную отлаживающий свою программу) получает предписание и исходные данные. После этого он начинает действовать как автомат, т.е. выполнять в реальном времени описанные в алгоритме шаги. В результате выполнения каждого шага могут образовываться промежуточные результаты, которые исполнитель должен где-то фиксировать так, чтобы они могли быть использованы в качестве исходных данных для следующего шага. Исполнитель совершит конечное число шагов (даже если отдельные описания шагов использовались неоднократно) и после этого остановится, зафиксировав окончательный результат подобно промежуточным результатам.
    Если есть текст некоторого предписания, то нужно убедиться в том, что это предписание является алгоритмом. Для этого необходимо проверить, выполняются ли перечисленные выше свойства.

  • История термина Современное формальное определение алгоритма было дано в 30-5...

    14 слайд

    История термина
    Современное формальное определение алгоритма было дано в 30-50-х годы XX века в работах Тьюринга, Поста, Чёрча (тезис Чёрча — Тьюринга), Н. Винера, А.А. Маркова.
    Само слово «алгоритм» происходит от имени учёного Абу Абдуллах Мухаммеда ибн Муса аль Хорезми.
    В 825 он написал сочинение, в котором впервые дал описание придуманной в Индии позиционной десятичной системы счисления. Аль-Хорезми сформулировал правила вычислений в новой системе и, вероятно, впервые использовал цифру 0 для обозначения пропущенной позиции в записи числа (её индийское название арабы перевели как as-sifr или просто sifr, отсюда такие слова, как «цифра» и «шифр»). Приблизительно в это же время индийские цифры начали применять и другие арабские учёные. В первой половине XII века книга аль-Хорезми в латинском переводе проникла в Европу. Переводчик дал ей название Algoritmi de numero Indorum («Алгоритми о счёте индийском»). По-арабски же книга именовалась Китаб аль-джебр валь-мукабала («Книга о сложении и вычитании»). Из оригинального названия книги происходит слово Алгебра.

  • Понятие «алгоритм» появилось в Европе в XII веке, когда на латынь была перев...

    15 слайд

    Понятие «алгоритм» появилось в Европе в XII веке, когда на латынь была переведена книга математика Мухаммеда ибн Муса ал- Хорезми, жившего в годах. В книге «Об индийском счёте» были изложены правила написания арабских цифр и действия над ними «столбиком». Для того времени это был «прорыв» в математике. Значение слова алгоритм очень схоже со значением слов рецепт, процесс, метод, способ.
    Абу Абдаллах (или Абу Джафар)
    Мухаммад ибн Муса ал Хорезми (783–850) – среднеазиатский математик, астроном, историк, географ - один из крупнейших ученых средневековья.

  • В средние века слово algorism (или algorismus), неизменно присутствовавшее в...

    16 слайд

    В средние века слово algorism (или algorismus), неизменно присутствовавшее в названиях математических сочинений, обрело значение способа выполнения арифметических действий посредством арабских цифр, то есть на бумаге, без использования абака. Именно в таком значении оно вошло во многие европейские языки.

    Алгоритм - это искусство счёта с помощью цифр, но поначалу слово «цифра» относилось только к нулю. Знаменитый французский трувер Готье де Куанси (Gautier de Coincy, 1177-1236) в одном из стихотворений использовал слова algorismus-cipher (которые означали цифру 0) как метафору для характеристики абсолютно никчёмного человека. Очевидно, понимание такого образа требовало соответствующей подготовки слушателей, а это означает, что новая система счисления уже была им достаточно хорошо известна.

  • Многие века абак был фактически единственным средством для практичных вычисле...

    17 слайд

    Многие века абак был фактически единственным средством для практичных вычислений, им пользовались и купцы, и менялы, и учёные. Достоинства вычислений на счётной доске разъяснял в своих сочинениях такой выдающийся мыслитель, как Герберт Аврилакский (938—1003), ставший в 999 папой римским под именем Сильвестра II. Новое с огромным трудом пробивало себе дорогу, и в историю математики вошло упорное противостояние лагерей абацистов и алгорисмиков, которые пропагандировали использование для вычислений абака вместо арабских цифр. Прошло не одно столетие, прежде чем новый способ счёта окончательно утвердился, столько времени потребовалось, чтобы выработать общепризнанные обозначения, усовершенствовать и приспособить к записи на бумаге методы вычислений. В Западной Европе учителей арифметики вплоть до XVII века продолжали называть «магистрами абака», как, например, математика Николо Тарталью (1500—1557).

  • Итак, сочинения по искусству счёта назывались Алгоритмами. Из многих сотен мо...

    18 слайд

    Итак, сочинения по искусству счёта назывались Алгоритмами. Из многих сотен можно выделить и такие необычные, как написанный в стихах трактат «Carmen de Algorismo» (латинское carmen и означает стихи) Александра де Вилла Деи, ум. 1240) или учебник венского астронома и математика Георга Пурбаха (1423-1461) «Opus algorismi jocundissimi» («Веселейшее сочинение по алгоритму»). Постепенно значение слова расширялось. Учёные начинали применять его не только к сугубо вычислительным, но и к другим математическим процедурам. Например, в 1360 французский философ Николай Орем (1323/25-1382) написал математический трактат «Algorismus proportionum» («Вычисление пропорций»), в котором впервые использовал степени с дробными показателями и фактически вплотную подошёл к идее логарифмов. Когда же на смену абаку пришёл так называемый счёт на линиях, многочисленные руководства по нему стали называть «Algorithmus linealis», то есть правила счёта на линиях. Можно обратить внимание на то, что первоначальная форма algorismi спустя какое-то время потеряла последнюю букву, и слово приобрело более удобное для европейского произношения вид algorism. Позднее и оно подверглось искажению связанному со словом arithmetic.

  • В 1684 Готфрид Лейбниц в сочинении «Nova Methodvs pro maximis et minimis, it...

    19 слайд

    В 1684 Готфрид Лейбниц в сочинении «Nova Methodvs pro maximis et minimis, itemque tangentibus…» впервые использовал слово «алгоритм» (Algorithmo) в ещё более широком смысле: как систематический способ решения проблем дифференциального исчисления.
    Однако потребовалось ещё почти два столетия, чтобы все старинные значения слова вышли из употребления. Этот процесс можно проследить на примере проникновения слова «алгоритм» в русский язык.
    Историки датируют 1691 годом один из списков древнерусского учебника арифметики, известного как «Счётная мудрость». Это сочинение известно во многих вариантах (самые ранние из них почти на сто лет старше) и восходит к ещё более древним рукописям XVI в. По ним можно проследить, как знание арабских цифр и правил действий с ними постепенно распространялось на Руси. Полное название этого учебника -«Сия книга, глаголемая по еллински и по-гречески арифметика, а по-немецки алгоризма, а порусски цифирная счётная мудрость».

  • Таким образом, слово «алгоритм» понималось первыми русскими математиками так...

    20 слайд

    Таким образом, слово «алгоритм» понималось первыми русскими математиками так же, как и в Западной Европе. Однако его не было ни в знаменитом словаре В.И.Даля, ни спустя сто лет в «Толковом словаре русского языка» под редакцией Д.Н.Ушакова (1935). Зато слово «алгорифм» можно найти и в популярном дореволюционном Энциклопедическом словаре братьев Гранат, и в первом издании Большой Советской Энциклопедии (БСЭ), изданном в 1926. И там, и там оно трактуется одинаково: как правило, по которому выполняется то или иное из четырёх арифметических действий в десятичной системе счисления. Однако к началу XX в. для математиков слово «алгоритм» уже означало любой арифметический или алгебраический процесс, выполняемый по строго определённым правилам, и это объяснение также даётся в БСЭ.

  • Одновременно с развитием понятия алгоритма постепенно происходила и его экспа...

    21 слайд

    Одновременно с развитием понятия алгоритма постепенно происходила и его экспансия из чистой математики в другие сферы. И начало ей положило появление компьютеров, благодаря которому слово «алгоритм» вошло в 1985 во все школьные учебники информатики и обрело новую жизнь. Вообще можно сказать, что его сегодняшняя известность напрямую связана со степенью распространения компьютеров. Например, в третьем томе «Детской энциклопедии» (1959) о вычислительных машинах говорится немало, но они ещё не стали чем-то привычным и воспринимаются скорее как некий атрибут светлого, но достаточно далёкого будущего. Соответственно и алгоритмы ни разу не упоминаются на её страницах. Но уже в начале 70-х гг. прошлого столетия, когда компьютеры перестали быть экзотической диковинкой, слово «алгоритм» стремительно входит в обиход. В «Энциклопедии кибернетики» (1974) в статье «Алгоритм» он уже связывается с реализацией на вычислительных машинах, а в «Советской военной энциклопедии» (1976) даже появляется отдельная статья «Алгоритм решения задачи на ЭВМ». За последние два десятилетия компьютер стал неотъемлемым атрибутом нашей жизни, компьютерная лексика становится все более привычной. Слово «алгоритм» в наши дни известно, вероятно, каждому. Оно уверенно шагнуло даже в разговорную речь, и сегодня мы нередко встречаем в газетах выражения вроде «алгоритм поведения», «алгоритм успеха» или даже «алгоритм предательства».

  • Виды алгоритмов Прикладные алгоритмы, предназначены для решения определенных...

    22 слайд

    Виды алгоритмов
    Прикладные алгоритмы, предназначены для решения определенных прикладных задач. Алгоритм считается правильным, если он отвечает требованиям задачи (например, даёт физически правдоподобный результат). Алгоритм (программа) содержит ошибки, если для некоторых исходных данных он даёт неправильные результаты, сбои, отказы или не даёт никаких результатов вообще. Важную роль играют рекурсивные алгоритмы (алгоритмы, вызывающие сами себя до тех пор, пока не будет достигнуто некоторое условие возвращения). Начиная с конца XX - начала XXI века активно разрабатываются параллельные алгоритмы, предназначенные для вычислительных машин, способных выполнять несколько операций одновременно.
    Рекурсия - метод определения функции через её предыдущие и ранее определенные значения, а так же способ организации вычислений, при котором функция вызывает сама себя с другим аргументом.
    Большинство современных языков высокого уровня поддерживают механизм рекурсивного вызова, когда функция, как элемент структуры языка программирования, возвращающая вычисленное значение по своему имени, может вызывать сама себя с другим аргументом. Эта возможность позволяет напрямую реализовывать вычисление рекурсивно определенных функций. Аппарат рекурсивных функций равномощен машине Тьюринга (см. ниже), и, следовательно, любой рекурсивный алгоритм может быть реализован итерационно.

  • Алгоритм - это точно определённая инструкция, последовательно применяя котору...

    23 слайд

    Алгоритм - это точно определённая инструкция, последовательно применяя которую к исходным данным, можно получить решение задачи. Для каждого алгоритма есть некоторое множество объектов, допустимых в качестве исходных данных. Например, в алгоритме деления вещественных чисел делимое может быть любым, а делитель не может быть равен нулю.
    Алгоритм служит, как правило, для решения не одной конкретной задачи, а некоторого класса задач. Так, алгоритм сложения применим к любой паре натуральных чисел. В этом выражается его свойство массовости, то есть возможности применять многократно один и тот же алгоритм для любой задачи одного класса.
    Для разработки алгоритмов и программ используется алгоритмизация - процесс систематического составления алгоритмов для решения поставленных прикладных задач. Алгоритмизация считается обязательным этапом в процессе разработки программ и решении задач на ЭВМ. Именно для прикладных алгоритмов и программ принципиально важны детерминированность, результативность и массовость, а также правильность результатов решения поставленных задач.

  • Алгоритм может быть записан словами и изображён схематически. Обычно сначала...

    24 слайд

    Алгоритм может быть записан словами и изображён схематически. Обычно сначала (на уровне идеи) алгоритм описывается словами, но по мере приближения к реализации он обретает всё более формальные очертания и формулировку на языке, понятном исполнителю (например, машинный код). Например, для описания алгоритма применяются блок-схемы. Другим вариантом описания, не зависимым от языка программирования, является псевдокод.
    Хотя в определении алгоритма требуется лишь конечность числа шагов, требуемых для достижения результата, на практике выполнение даже хотя бы миллиарда шагов является слишком медленным. Также обычно есть другие ограничения (на размер программы, на допустимые действия). В связи с этим вводят такие понятия как сложность алгоритма (временная, по размеру программы, вычислительная и др.).
    Для каждой задачи может существовать множество алгоритмов, приводящих к цели. Увеличение эффективности алгоритмов составляет одну из задач современной информатики. В 50-х гг. XX века появилась даже отдельная её область – быстрые алгоритмы. В частности, в известной всем с детства задаче об умножении десятичных чисел обнаружился ряд алгоритмов, позволяющих существенно (в асимптотическом смысле) ускорить нахождение произведения.

  • Быстрые алгоритмы - область вычислительной математики, которая изучает алгор...

    25 слайд

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

    Замечания.

    1) Существует много разных способов для записи (описания) одного и того же алгоритма: текстовая форма записи; запись в виде блок-схемы; запись алгоритма на каком-либо алгоритмическом языке; представление алгоритма в виде машины Тьюринга или машины Поста. Выбор способа записи алгоритма зависит от нескольких причин. Если важна наглядность записи алгоритма, то разумно использовать блок-схему. Если алгоритм небольшой, то его можно записать в текстовой форме. При этом команды могут быть пронумерованы или записаны в виде сплошного текста.

  • 3) Если задача имеет алгоритмическое решение, то можно придумать множество ра...

    26 слайд

    3) Если задача имеет алгоритмическое решение, то можно придумать множество различных способов её решения, т.е. различных алгоритмов решения одной и той же задачи, на основе которого можно выбрать самый эффективный способ (наилучший) алгоритм.
    2) Вне зависимости от выбранной формы записи элементарные шаги алгоритма (команды) при укрупнении объединяются в алгоритмические конструкции: последовательные, ветвящиеся, циклические, рекурсивные. В 1969 Э. Дейкстра доказал, что для записи любого алгоритма достаточно трёх основных алгоритмических конструкций: последовательных, ветвящихся, циклических.

  • Исполнитель алгоритмов 	Понятие исполнителя невозможно определить с помощью к...

    27 слайд

    Исполнитель алгоритмов
    Понятие исполнителя невозможно определить с помощью какой-либо формализации. Исполнителем может быть человек, группа людей, робот, станок, компьютер, язык программирования и т.д. Важнейшим свойством, характеризующим любого из этих исполнителей, является то, что исполнитель умеет выполнять некоторые команды. Так исполнитель-человек умеет выполнять такие команды, как «встать», «сесть», «включить компьютер» и т.д., а исполнитель - язык программирования Бейсик - команды PRINT, END, LIST и другие аналогичные.

    Вся совокупность команд, которые данный исполнитель умеет выполнять, называется системой команд исполнителя (СКИ).

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

    28 слайд

    Одно из принципиальных обстоятельств состоит в том, что исполнитель не вникает в смысл того, что он делает, но получает необходимый результат. В таком случае говорят, что исполнитель действует формально, т.е. отвлекается от содержания поставленной задачи и только строго выполняет некоторые правила, инструкции. Это - важная особенность алгоритмов. Наличие алгоритма формализует процесс решения задачи, исключает рассуждение исполнителя. Использование алгоритма и дает возможность решать задачу формально, механически исполняя команды алгоритма в указанной последовательности. Целесообразность предусматриваемых алгоритмом действий обеспечивается точным анализом со стороны того, кто составляет этот алгоритм. Введение в рассмотрение понятия «исполнитель» позволяет определить алгоритм как понятное и точное предписание исполнителю совершить последовательность действий, направленных на достижение поставленной цели. В случае исполнителя-робота мы имеем пример алгоритма «в обстановке», характеризующегося отсутствием каких-либо величин. Наиболее же распространенными и привычными являются алгоритмы работы с величинами - числовыми, символьными, логическими и т.д.

  • Алгоритмический язык Достаточно распространенным способом представления алгор...

    29 слайд

    Алгоритмический язык
    Достаточно распространенным способом представления алгоритма является его запись на алгоритмическом языке, представляющем в общем случае систему обозначений и правил для единообразной и точной записи алгоритмов и исполнения их. Отметим, что между понятиями «алгоритмический язык» и «языки программирования» есть различие; прежде всего, под исполнителем в алгоритмическом языке может подразумеваться не только компьютер, но и устройство для работы «в обстановке». Программа, записанная на алгоритмическом языке, не обязательно, предназначена компьютеру. Как и каждый язык, алгоритмический язык имеет свой словарь. Основу этого словаря составляют слова, употребляемые для записи команд, входящих в систему команд исполнителя того или иного алгоритма. Такие команды называют простыми командами. В алгоритмическом языке используют слова, смысл и способ употребления которых задан раз и навсегда. Эти слова называют служебными. Использование служебных слов делает запись алгоритма более наглядной, а форму представления различных алгоритмов – единообразной.

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

    30 слайд

    Алгоритм, записанный на алгоритмическом языке, должен иметь название. Название желательно выбирать так, чтобы было ясно, решение какой задачи описывает данный алгоритм. Для выделения названия алгоритма перед ним записывают служебное слово АЛГ (АЛГоритм). За названием алгоритма (обычно с новой строки) записывают его команды. Для указания начала и конца алгоритма его команды заключают в пару служебных слов НАЧ (НАЧало) и КОН (КОНец). Команды записывают последовательно.

  • Способы записи алгоритмов

	Для записи алгоритмов используют самые разнообраз...

    31 слайд

    Способы записи алгоритмов

    Для записи алгоритмов используют самые разнообразные средства. Выбор средства определяется типом исполняемого алгоритма. Выделяют следующие основные способы записи алгоритмов:
    - вербальный, когда алгоритм описывается на человеческом языке;
    - символьный, когда алгоритм описывается с помощью набора символов;
    - графический, когда алгоритм описывается с помощью набора графических изображений.
    Общепринятыми способами записи являются графическая запись с помощью блок-схем и символьная запись с помощью какого-либо алгоритмического языка.
    Описание алгоритма с помощью блок схем осуществляется рисованием последовательности геометрических фигур, каждая из которых подразумевает выполнение определенного действия алгоритма. Порядок выполнения действий указывается стрелками. Написание алгоритмов с помощью блок-схем регламентируется ГОСТом. Внешний вид основных блоков, применяемых при написании блок схем, приведен на рисунке:

  • 32 слайд

  • В зависимости от последовательности выполнения действий в алгоритме выделяют...

    33 слайд

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

  • Итерационным называется цикл, число повторений которого не задается, а опреде...

    34 слайд

    Итерационным называется цикл, число повторений которого не задается, а определяется в ходе выполнения цикла. В этом случае одно повторение цикла называется итерацией.

  • Что такое словесный способ записи алгоритмов?
Например. Записать алгоритм нах...

    35 слайд

    Что такое словесный способ записи алгоритмов?
    Например. Записать алгоритм нахождения наибольшего общего делителя (НОД) двух натуральных чисел (алгоритм Эвклида).
    Алгоритм может быть следующим:
    задать два числа;
    если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма;
    определить большее из чисел;
    заменить большее из чисел разностью большего и меньшего из чисел;
    повторить алгоритм с шага 2.
    Описанный алгоритм применим к любым натуральным числам и должен приводить к решению поставленной задачи. Убедитесь в этом самостоятельно, определив с помощью этого алгоритма наибольший общий делитель чисел 125 и 75.
    Словесный способ не имеет широкого распространения, так как такие описания:
    строго не формализуемы;
    страдают многословностью записей;
    допускают неоднозначность толкования отдельных предписаний.

  • Что такое псевдокод?
	Псевдокод занимает промежуточное место между естественн...

    36 слайд

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

  • Единого или формального определения псевдокода не существует, поэтому возмож...

    37 слайд

    Единого или формального определения псевдокода не существует, поэтому возможны различные псевдокоды, отличающиеся набором служебных слов и основных (базовых) конструкций.
    Примером псевдокода является школьный алгоритмический язык в русской нотации (школьный АЯ), описанный в учебнике А.Г. Кушниренко и др. "Основы информатики и вычислительной техники", 1991. Этот язык в дальнейшем мы будем называть просто "алгоритмический язык".

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 186 439 материалов в базе

Материал подходит для УМК

  • «Информатика (углублённый уровень) (в 2 частях)», Семакин И.Г., Шеина Т.Ю., Шестакова Л.В.

    «Информатика (углублённый уровень) (в 2 частях)», Семакин И.Г., Шеина Т.Ю., Шестакова Л.В.

    Тема

    1.7. Алгоритмы обработки информации

    Больше материалов по этой теме
Скачать материал

Другие материалы

Основные типы алгоритмов: линейные, разветвляющиеся, циклические. Вспомогательные алгоритмы. Процедуры. Рекурсивные алгоритмы
  • Учебник: «Информатика (углублённый уровень) (в 2 частях)», Семакин И.Г., Шеина Т.Ю., Шестакова Л.В.
  • Тема: 1.7. Алгоритмы обработки информации
  • 16.02.2018
  • 1140
  • 5
«Информатика (углублённый уровень) (в 2 частях)», Семакин И.Г., Шеина Т.Ю., Шестакова Л.В.

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 16.02.2018 2511
    • PPTX 1.3 мбайт
    • 17 скачиваний
    • Оцените материал:
  • Настоящий материал опубликован пользователем Збинякова Мария Викторовна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Збинякова Мария Викторовна
    Збинякова Мария Викторовна
    • На сайте: 7 лет и 9 месяцев
    • Подписчики: 0
    • Всего просмотров: 17284
    • Всего материалов: 21

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой