Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика (2).docx
Скачиваний:
30
Добавлен:
06.11.2019
Размер:
116.5 Кб
Скачать
  1. Понятие алгоритма. Его структура.

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

Формальные признаки алгоритмов

Различные определения алгоритма в явной или неявной форме содержат следующий ряд общих требований:

  • Детерминированность — определённость. В каждый момент времени следующий шаг работы однозначно определяется состоянием системы. Таким образом, алгоритм выдаёт один и тот же результат (ответ) для одних и тех же исходных данных.

  • Понятность — алгоритм для исполнителя должен включать только те команды, которые ему (исполнителю) доступны, которые входят в его систему команд.

  • Завершаемость (конечность) — при корректно заданных исходных данных алгоритм должен завершать работу и выдавать результат за конечное число шагов. С другой стороны, вероятностный алгоритм может и никогда не выдать результат, но вероятность этого равна 0.

  • Массовость — алгоритм должен быть применим к разным наборам исходных данных.

  • Результативность — завершение алгоритма определенными результатами.

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

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

Виды алгоритмов

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

Форма алгоритмов

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

  1. Классификация языков программирования.

1. Машинно – ориентированные языки

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

1.1. Машинный язык

Отдельный компьютер имеет свой определенный Машинный язык (далее МЯ),  ему предписывают выполнение указываемых операций над определяемыми ими операндами, поэтому МЯ является командным.

1.2. Языки Символического Кодирования

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