- •§ 1. Информация, ее виды и свойства
- •1.1. Различные уровни представлений об информации
- •1.2. Непрерывная и дискретная информация
- •1.3. Единицы количества информации: вероятностный и объемный подходы
- •Вероятностный подход
- •Объемный подход
- •1.4. Свойства информации
- •§ 2. Алгоритм и его свойства
- •2.1. Различные подходы к понятию «алгоритм»
- •2.2. Понятие исполнителя алгоритма
- •2.3. Графическое представление алгоритмов
- •2.4. Свойства алгоритмов
- •§ 3. Программирование
- •3.1 Классификация языков программирования
- •3.2. Понятие о языках программирования высокого уровня
- •3.3. Введение в паскаль
- •3.4. Основные конструкции языка
- •3.5. Структуры данных
- •3.6. Процедуры и функции
- •3.7. Работа с файлами
- •3.8. Работа с графикой
- •Var gd, gm: integer; {переменные gd и gm определяют драйвер и режим}
- •§ 4. Базы данных и системы управления базами данных
- •4.1. Понятие информационной системы
- •4.2. Виды структур данных
- •4.3. Виды баз данных
- •4.4. Состав и функции систем управления базами данных
- •4.5.Система управления базами данныхmicrosoftaccess
- •§ 5. Понятие об информационном моделировании
- •5.1. Моделирование как метод решения прикладных задач
- •5.2. Основные понятия информационного моделирования
- •5.3. Связи между объектами
- •§ 6. Компьютерные сети
- •6.1 Введение
- •6.2. Локальные сети
- •Аппаратные средства
- •Конфигурации локальных сетей и организация обмена информацией
- •6.3. Глобальные сети
- •Общие принципы организации
- •Аппаратные средства и протоколы обмена информацией
- •6.4. Электронная почта
- •§7. Компьютерные вирусы
- •7.1. Что такое компьютерный вирус
- •7.2. Разновидности компьютерных вирусов
- •7.3. Антивирусные средства
§ 2. Алгоритм и его свойства
2.1. Различные подходы к понятию «алгоритм»
Понятие алгоритма - одно из фундаментальных понятий информатики. Алгоритмизация наряду с моделированием выступает в качестве общего метода информатики. К реализации определенных алгоритмов сводятся процессы управления в различных системах, что делает понятие алгоритма близким и кибернетике.
Алгоритмы являются объектом систематического исследования пограничной между математикой и информатикой научной дисциплины, примыкающей к математической логике - теории алгоритмов.
Особенность положения состоит в том, что при решении практических задач, предполагающих разработку алгоритмов для реализации на ЭВМ, и тем более при использовании на практике информационных технологий, можно, как правило, не опираться на высокую формализацию данного понятия. Поэтому представляется целесообразным познакомиться с алгоритмами и алгоритмизацией на основе содержательного толкования сущности понятия алгоритма и рассмотрения основных его свойств. При таком подходе алгоритмизация более выступает как набор определенных практических приемов, особых специфических навыков рационального мышления в рамках заданных языковых средств. Можно провести аналогию между этим обстоятельством и рассмотренным выше подходом к измерению информации: тонкие математические построения при «кибернетическом» подходе не очень нужны при использовании гораздо более простого «объемного» подхода при практической работе с компьютером.
Само слово «алгоритм» происходит от algorithmi - латинской формы написания имени великого математика IX века аль-Хорезми, который сформулировал правила выполнения арифметических действий. Первоначально под алгоритмами и понимали только правила выполнения четырех арифметических действий над многозначными числами.
2.2. Понятие исполнителя алгоритма
Понятие исполнителя невозможно определить с помощью какой-либо формализации. Исполнителем может быть человек, группа людей, робот, станок, компьютер, язык программирования и т.д. Важнейшим свойством, характеризующим любого из этих исполнителей, является то, что исполнитель умеет выполнять некоторые команды. Так, исполнитель-человек умеет выполнять такие команды как «встать», «сесть», «включить компьютер» и т.д., а исполнитель-язык программирования Паскаль - команды WRITE,END,READи другие аналогичные. Вся совокупность команд, которые данный исполнитель умеет выполнять, называется системой команд исполнителя(СКИ).
В качестве примера (рис. 2.1) рассмотрим исполнителя-робота, работа которого состоит в собственном перемещении по рабочему полю (квадрату произвольного размера, разделенному на клетки) и перемещении объектов, в начальный момент времени находящихся на «складе» (правая верхняя клетка).
Рис. 2.1. Исполнитель-робот
Одно из принципиальных обстоятельств состоит в том, что исполнитель не вникает в смысл того, что он делает, но получает необходимый результат. В таком случае говорят, что исполнитель действует формально,т. е. отвлекается от содержания поставленной задачи и только строго выполняет некоторые правила, инструкции.
Это - важная особенность алгоритмов. Наличие алгоритма формализует процесс решения задачи, исключает рассуждение исполнителя. Использование алгоритма дает возможность решать задачу формально, механически исполняя команды алгоритма в указанной последовательности. Целесообразность предусматриваемых алгоритмом действий обеспечивается точным анализом со стороны того, кто составляет этот алгоритм.
Введение в рассмотрение понятия «исполнитель» позволяет определить алгоритм как понятное и точное предписание исполнителю совершить последовательность действий, направленных на достижение поставленной цели. В случае исполнителя-робота мы имеем пример алгоритма «в обстановке», характеризующегося отсутствием каких-либо величин. Наиболее же распространенными и привычными являются алгоритмы работы с величинами - числовыми, символьными, логическими и т.д.