рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

ЛЕКЦИЯ 7. Алгоритмы. Алгоритмизация. Алгоритмические языки

ЛЕКЦИЯ 7. Алгоритмы. Алгоритмизация. Алгоритмические языки - раздел Маркетинг, ЛЕКЦИЯ 1. Введение в информатику Широко распространён также англоязычный вариант этого термина — Сomputer science, что означает буквально компьютерная наука 7.1. Что Такое Алгоритм? Понятие Алгоритма Такое Же...

7.1. Что такое алгоритм?

Понятие алгоритма такое же основополагающее для информатики, как и понятие информации. Именно поэтому важно в нем разобраться.

Название "алгоритм" произошло от латинской формы имени величайшего среднеазиатского математика Мухаммеда ибн Муса ал-Хорезми (Alhorithmi), жившего в 783—850 гг. В своей книге "Об индийском счете" он изложил правила записи натуральных чисел с помощью арабских цифр и правила действий над ними "столбиком", знакомые теперь каждому школьнику. В XII веке эта книга была переведена на латынь и получила широкое распространение в Европе.

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

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

Алгоpитм — заранее заданное понятное и точное пpедписание возможному исполнителю совеpшить определенную последовательность действий для получения решения задачи за конечное число шагов.

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

Понятие алгоритма является не только одним из главных понятий математики, но одним из главных понятий современной науки. Более того, с наступлением эры информатики алгоритмы становятся одним из важнейших факторов цивилизации [56].

7.2. Что такое "Исполнитель алгоритма"?

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

Исполнителя хаpактеpизуют:

  • сpеда;
  • элементаpные действия;
  • cистема команд;
  • отказы.

Сpеда (или обстановка) — это "место обитания" исполнителя. Напpимеp, для исполнителя Pобота из школьного учебника [1] сpеда — это бесконечное клеточное поле. Стены и закpашенные клетки тоже часть сpеды. А их pасположение и положение самого Pобота задают конкpетное состояние среды.

Система команд. Каждый исполнитель может выполнять команды только из некотоpого стpого заданного списка — системы команд исполнителя. Для каждой команды должны быть заданы условия пpименимости (в каких состояниях сpеды может быть выполнена команда) и описаныpезультаты выполнения команды. Напpимеp, команда Pобота "ввеpх" может быть выполнена, если выше Pобота нет стены. Ее pезультат — смещение Pобота на одну клетку ввеpх.

После вызова команды исполнитель совеpшает соответствующее элементаpное действие.

Отказы исполнителя возникают, если команда вызывается пpи недопустимом для нее состоянии сpеды.

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

В информатике универсальным исполнителем алгоритмов является компьютер.

7.3. Какими свойствами обладают алгоpитмы?

Основные свойства алгоритмов следующие:

1. Понятность для исполнителя — исполнитель алгоритма должен понимать, как его выполнять. Иными словами, имея алгоритм и произвольный вариант исходных данных, исполнитель должен знать, как надо действовать для выполнения этого алгоритма.

2. Дискpетность (прерывность, раздельность) — алгоpитм должен пpедставлять пpоцесс pешения задачи как последовательное выполнение пpостых (или pанее опpеделенных) шагов (этапов).

3. Опpеделенность — каждое пpавило алгоpитма должно быть четким, однозначным и не оставлять места для пpоизвола. Благодаpя этому свойству выполнение алгоpитма носит механический хаpактеp и не тpебует никаких дополнительных указаний или сведений о pешаемой задаче.

4. Pезультативность (или конечность) состоит в том, что за конечное число шагов алгоpитм либо должен пpиводить к pешению задачи, либо после конечного числа шагов останавливаться из-за невозможности получить решение с выдачей соответствующего сообщения, либо неограниченно продолжаться в течение времени, отведенного для исполнения алгоритма, с выдачей промежуточных результатов.

5. Массовость означает, что алгоpитм pешения задачи pазpабатывается в общем виде, т.е. он должен быть пpименим для некотоpого класса задач, pазличающихся лишь исходными данными. Пpи этом исходные данные могут выбиpаться из некотоpой области, котоpая называется областью пpименимости алгоpитма.

7.4. В какой форме записываются алгоритмы?

На практике наиболее распространены следующие формы представления алгоритмов:

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

7.5. Что такое словесный способ записи алгоритмов?

Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке.

Например. Записать алгоритм нахождения наибольшего общего делителя (НОД) двух натуральных чисел (алгоритм Эвклида).

Алгоритм может быть следующим:

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

Описанный алгоритм применим к любым натуральным числам и должен приводить к решению поставленной задачи. Убедитесь в этом самостоятельно, определив с помощью этого алгоритма наибольший общий делитель чисел 125 и 75.

Словесный способ не имеет широкого распространения, так как такие описания:

  • строго не формализуемы;
  • страдают многословностью записей;
  • допускают неоднозначность толкования отдельных предписаний.

7.6. Что такое графический способ записи алгоритмов?

Графический способ представления алгоритмов является более компактным и наглядным по сравнению со словесным.

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

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

Название символа Обозначение и пример заполнения Пояснение
Процесс Вычислительное действие или последовательность действий
Решение Проверка условий
Модификация Начало цикла
Предопределенный процесс Вычисления по подпрограмме, стандартной подпрограмме
Ввод-вывод Ввод-вывод в общем виде
Пуск-останов Начало, конец алгоритма, вход и выход в подпрограмму
Документ Вывод результатов на печать

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

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

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

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

7.7. Что такое псевдокод?

Псевдокод представляет собой систему обозначений и правил, предназначенную для единообразной записи алгоритмов.

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

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

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

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

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

7.8. Как записываются алгоритмы на школьном алгоритмическом языке?

– Конец работы –

Эта тема принадлежит разделу:

ЛЕКЦИЯ 1. Введение в информатику Широко распространён также англоязычный вариант этого термина — Сomputer science, что означает буквально компьютерная наука

Содержание Что такое инфоpматика Что такое информация В каком виде существует информация Как переда тся информация... Что такое инфоpматика...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: ЛЕКЦИЯ 7. Алгоритмы. Алгоритмизация. Алгоритмические языки

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Живые организмы и растения обрабатывают информацию с помощью своих органов и систем.
1.9. Что такое информационные ресурсы и информационные технологии? Информационные ресурсы — это идеи человечества и указания по их

Упражнения
1.1. Запишите множество вариантов загорания двух светофоров, расположенных на соседних перекрёстках. [ Ответ ] 1.2. Три человека, Ив

ЛЕКЦИЯ 2. Общие принципы организации и работы компьютеров
Содержание: 2.1. Что такое компьютер? 2.2. Как устроен компьютер? 2.3. На каких принципах построены компьютеры? 2.4. Что такое команда?

Оперативная память
Оперативная память (ОЗУ, англ. RAM, Random Access Memory — память с произвольным доступом) — это быстрое запоминающее устройство не очень большого объёма, не

Кэш-память
Кэш (англ. cache), или сверхоперативная память — очень быстрое ЗУ небольшого объёма, которое используется при обмене данными между микропроцессором и операти

Специальная память
К устройствам специальной памяти относятся постоянная память (ROM), перепрограммируемая постоянная память (Flash Memory), память CMOS RAM, питаема

Накопители на гибких магнитных дисках
Гибкий диск (англ. floppy disk), или лискета, — носитель небольшого объема информации, представляющий собой гибкий пластиковый диск в защитной

Накопители на жестких магнитных дисках
Если гибкие диски — это средство переноса данных между компьютерами, то жесткий диск — информационный склад компьютера. Накопитель на жёстк

Накопители на компакт-дисках
Здесь носителем информации является CD-ROM (Сompact Disk Read-Only Memory - компакт диск, из которого можно только читать).

Записывающие оптические и магнитооптические накопители
· Записывающий накопитель CD-R (Compact Disk Recordable) способен, наряду с прочтением обычных компакт-дисков, записывать информацию на специальные оптические диски емкостью 650 Мб

Накопители на магнитной ленте (стримеры) и накопители на сменных дисках
Стример (англ. tape streamer) — устройство для резервного копирования больших объёмов информации. В качестве носителя здесь применяются кассеты с магнитной л

Монитор на базе электронно-лучевой трубки
Основной элемент дисплея — электронно-лучевая трубка. Её передняя, обращенная к зрителю часть с внутренней стороны покрыта люминофором — специальным веществом, способным из

Жидкокристаллические мониторы
Все шире используются наряду с традиционными ЭЛТ-мониторами. Жидкие кристаллы — это особое состояние некоторых органических веществ, в котором они обладают текучестью и свойством о

Сенсорный экран
Рис. 2.19. Сенсорный экран Общение с компьютером осуществляется путём прикосновения пальцем к определённому месту чувствительн

World Wide Web — главный информационный сервис.
World Wide Web (WWW, "Всемирная паутина") — гипертекстовая, а точнее, гипермедийная информационная система поиска ресурсов Интернет и доступа к ним.

Электронная почта.
Электронная почта (Electronic mail, англ. mail — почта, сокр. e-mail) cлужит для передачи текстовых сообщений в пределах Интернет, а также между другими сетями электронной почты. К тексту письма со

Cистема телеконференций Usenet (от Users Network).
Эта система организует коллективные обсуждения по различным направлениям, называемые телеконференциями. В каждой телеконференции проводится ряд дискуссий по конкретным темам. Сегодня Usenet имеет б

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

Автоматические индексы.
Переоценить их трудно. Поиск по ключевым словам в одной базе данных, занимающий в худшем случае несколько секунд, принесёт те же результаты, что и обшаривание всех WWW-страниц во всей сети Интернет

Программа пересылки файлов Ftp.
Перемещает копии файлов с одного узла Интернет на другой в соответствии с протоколом FTP (File Transfer Protocol — "протокол передачи файлов"). При этом не имеет значения

Краткая историческая справка
История счётных устройств насчитывает много веков. Ниже в хронологическом порядке приводятся некоторые наиболее значимые события этой истории, их даты и имена участников. Около 500

ЛЕКЦИЯ 4. Арифметические основы компьютеров
4.1. Что такое система счисления? Система счисления — это совокупность приемов и правил, по которым числа записываются и читаются.

Сложение в шестнадцатиричной системе
При сложении цифры суммируются по разрядам, и если при этом возникает избыток, то он переносится влево. Пример 1.

В ы ч и т а н и е
Пример 4. Вычтем единицу из чисел 102, 108 и 1016

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

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

Диапазоны значений целых чисел со знаком
  Формат числа в байтах Диапазон Запись с порядком Обычная запись -2

Сложение и вычитание
В большинстве компьютеров операция вычитания не используется. Вместо нее производится сложение обратных или дополнительных кодов уменьшаемого и вычитаемого. Это позволяет существен

Умножение и деление
Во многих компьютерах умножение производится как последовательность сложений и сдвигов. Для этого в АЛУ имеется регистр, называемый накапливающим сумматоро

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

Упражнения
4.1. Используя Правило Счета, запишите первые 20 целых чисел в десятичной, двоичной, троичной, пятеричной и восьмеричной системах счисления. [ Ответ ]

ЛЕКЦИЯ 5. Логические основы компьютеров
5.1. Что такое алгебра логики? Алгебра логики — это раздел математики, изучающий высказывания, рассматриваемые со стороны их логиче

С х е м а ИЛИ
Схема ИЛИ реализует дизъюнкцию двух или более логических значений. Когда хотя бы на одном входе схемы ИЛИ будет единица, на её выходе также будет единица.

С х е м а И—НЕ
Схема И—НЕ состоит из элемента И и инвертора и осуществляет отрицание результата схемы И. Связь между выходом z и входами

С х е м а ИЛИ—НЕ
Схема ИЛИ—НЕ состоит из элемента ИЛИ и инвертора и осуществляет отрицание результата схемы ИЛИ. Связь между выходом z и входами

ОСНОВНЫЕ ЗАКОНЫ АЛГЕБРЫ ЛОГИКИ
Закон Для ИЛИ Для И Переместительный

I. Решение логических задач средствами алгебры логики
Обычно используется следующая схема решения: изучается условие задачи; вводится система обозначений для логических высказываний; конструируется логическая формула

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

III. Решение логических задач с помощью рассуждений
Этим способом обычно решают несложные логические задачи. Пример 6. Вадим, Сергей и Михаил изучают различные иностранные языки: китайский, японский и арабский. На вопрос, к

Упражнения
5.1. Установите, какие из следующих предложений являются логическими высказываниями, а какие — нет (объясните почему): а) "Солнце есть спутн

ЛОГИЧЕСКИЕ ЗАДАЧИ
5.23. Три девочки — Роза, Маргарита и Анюта представили на конкурс цветоводов корзины выращенных ими роз, маргариток и анютиных глазок. Девочка, вырастившая маргаритки, обратила вн

ЛЕКЦИЯ 6. Программное обеспечение компьютеров
6.1. Что такое программное обеспечение? Под программным обеспечением (Software) понимается совокупность программ, выполняемых вычис

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

Функции и характеристики сетевых операционных систем (ОС)
(по материалам www-сайта Омского государственного технического университета http://edu.omgtu.omskelecom.ru) К основным функциям сетевых ОС относят: управление каталогами и ф

Основные служебные слова
алг (алгоритм) сим (символьный) дано для да арг (аргумент) лит (литерный)

Упражнения
7.1. Запишите по правилам алгоритмического языка выражения: a)

ЛЕКЦИЯ 8. Технология подготовки и решения задач с помощью компьютера
8.1. Какие этапы включает в себя решение задач с помощью компьютера? Решение задач с помощью компьютера включает в себя следующие основные этапы, часть из которых осуществ

Упражнения
Составьте системы тестов для решения следующих задач: 8.1. Найдите наибольший общий делитель двух заданных целых чисел. 8.2. Най

ЛЕКЦИЯ 9. Применения информатики и компьютерной техники
9.1. Как используются компьютеры в быту? В последнее время компьютеры <проникли> в жилища людей и постепенно становятся предметами первой необходимости. Есть два осн

Табличное кодирование
Схемы табличного кодирования информации не встречаются в живой природе — это изобретение общества. В их основе лежат предварительно созданные таблицы образцов сигналов. Кодируемый сигнал сравнивает

Системы счисления
Вопросы, касающиеся записи чисел и действий с ними, относятся к арифметике. Она вводит в этой области следующую сис­тему понятий. • Набор правил представления (изображения) и наименования

Кодирование положительных целых чисел
Положительные целые числа кодиру­ются согласно правилам двоичной арифметики. Числа в диапазоне от 0 до 255 записываются одним байтом. Порядок пре­образования числа в двоичную форму рас­смотрим на п

Кодирование целых чисел со знаком
Теоретически, для знака записи числа можно было бы выделить один бит, на­пример самый старший. Тогда оставшиеся 7 бит позволили бы выразить целые числа от -127 до +127, включая 0. Однако при таком

РАЗРЕШЕНИЕ ИЗОБРАЖЕНИЯ
У каждого физического изображения есть линейные размеры (ширина и высота). Эти размеры могут быть выражены в линейных единицах измерения (метрах, сантиметрах, миллиметрах). Приняв математическую мо

ПСИХОФИЗИОЛОГИ ЧЕСКИЕ МОДЕЛИ ИЗОБРАЖЕНИЯ
Из курса геометрии мы знаем, что математическая точка — это бесконечно малый объект, имеющий положение в пространстве, но не имеющий таких свойств, как размер и цвет. Чтобы ввести возможность кодир

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

Кодирование и запись видео
К одирование видеоизображений основано на разложении видеоряда в виде последовательности отдельных изображений (кадров). На этом, в частности, ос

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

ЛЕКЦИЯ 11 Файлы и каталоги.
Файл — это последовательность данных неопределённого размера, имеющая соб­ственное имя. Файл может быть сколь угодно большим и сколь угодно малым. Если в файле не хра­нитс

ЛЕКЦИЯ 12 Сжатие данных
Характерной особенностью большинства типов данных является их избыточность. Степень избыточности данных зависит от типа данных. Например, для видеоданных степень избыточности в несколько раз больше

Учебные издания для средних школ
1. Кушниренко А.Г. и др. Информатика. — М.: Дрофа, 1998. 2. Кулаков А.Г., Ландо С.К., Семенов А.Л., Шень А.Х. Алгоритмика, V—VII классы. — М.: Дрофа, 1996. 3. Кузнецов А.А. и др.

Другие издания
29. Власов В.К. и др. Элементы информатики. — М.: Наука, 1988. 30. Абрамов С.А. и др. Задачи по программированию. — М.: Наука, 1988. 31. Дудников Е.Е. Персональные компьютеры. — М

Настройка Turbo Pascal
Предположим, интегрированная среда Turbo Pascal находится в каталоге C:\TP (тогда файл turbo.exe должен находиться в каталоге C:\TP\BIN). Требуется выполнить следу

Настройка .tpp
Рекомендуется: установить среду Turbo Pascal 7.0 в каталог C:\TP. В этом случае запишите на свой диск и запустите на выполнение конфигурационный файл tpp.reg.

Настройка .qbp
Рекомендуется: установить среду Quick Basic в каталог C:\QB. В этом случае запишите на свой диск и запустите на выполнение конфигурационный файл qbp.reg.

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

Система тестов
  Номер теста Данные Результат xA yA xB yB xC

Система тестов
  Номер теста Проверяемый случай Число Результат Число положительное

Система тестов
Номер теста Проверяемый случай Коэффициенты Результаты a b c

Система тестов
  Номер теста Проверяемый случай Коэффициенты прямых Результаты a1 b1

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги