Что можно делать с информацией?

Алгоритм – это определенная последовательность инструкций (предписаний), доступные для понимания исполнителем и предназначенные для достижения им указанной цели или решения поставленной задачи.

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

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

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

· среда (или обстановка) – "место обитания" исполнителя;

· система команд – каждый исполнитель может выполнять команды только из некоторого строго заданного списка. Для каждой команды должны быть заданы условия применимости (в каких состояниях среды может быть выполнена команда) и описаны результаты выполнения команды;

· элементарные действия – то, что исполнитель совершает после вызова соответствующей команды;

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

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

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

К числу основных свойств алгоритма относятся следующие:

· Понятность (доступность) – алгоритм должен учитывать специфику исполнителя и, при необходимости, ему должны предоставляться дополнительные сведения;

· Дискретность (раздельность) – выполнение каждого очередного шага алгоритма должно начинаться только после полного завершения предыдущего шага;

· Детерминированность (определенность) – выполнение алгоритма исполнителем носит механический характер, т.е. выбор каждого очередного шага алгоритма зависит не от предпочтений исполнителя, а от результатов, достигнутых им на предыдущем шаге;

· Результативность (конечность) – либо решение задачи достигается за конечное, хотя бы и большое, число шагов, либо делается вывод о невозможности продолжения выполнения алгоритма по той или иной причине (есть алгоритмы, не обладающие этим свойством – например, вычисление иррационального числа p);

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

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

· Словесная запись (не формализованная запись алгоритма на естественном языке, например, рецепт приготовления манной каши);

· Блок-схема (наиболее наглядная графическая форма представления алгоритмов, используемая профессионалами особенно в тех случаях, когда алгоритм обладает изощренной логикой исполнения);

· Псевдокоды (язык программирования для бедных, когда нет возможности преподавать основы алгоритмизации с использованием ЭВМ – полуформализованные описания алгоритмов, включающий в себя как элементы "птичьего" языка программирования);

Компьютерная программа (жестко формализованная запись алгоритма, ориентированная на исполнителя – ЭВМ). Для разработки компьютерных программ используются инструментальные средства, называемые языками программирования

Информацию можно:

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

Все эти процессы, связанные с определенными операциями над информацией, называются информационными процессами.