Современный компьютер способен действовать только по формальным схемам, заготовленным для него человеком.
Поэтому, чтобы привлечь компьютер к исследованию объекта, процесса, явления или к “рутинной” обработке информации, прежде всего надо:
· четко поставить задачу (разработать модель),
· определить исходные данные, форму представления результатов.
· далее необходимо создать алгоритм решения задачи и программу, которая будет понята компьютером.
Возникает классическая для информатики триада:
модель — алгоритм — программа
Во многих случаях этапы моделирования и алгоритмизации неотделимы друг от друга (например, при разработке модели производственного процесса).
Слово «алгоритм» произошло от имени выдающегося математика средневекового Востока Мухаммеда аль-Хорезми, описавшего в IX веке правила выполнения вычислений с многозначными десятичными числами. Правила сложения, вычитания, умножения столбиком, деления «уголком», которые мы учим в младших классах, - это алгоритмы аль-Хорезми.
Для составления программы, предназначенной для решения на ЭВМ какой-либо задачи, требуется составление алгоритма ее решения — точного предписания, которое определяет процесс, ведущий от исходных данных к требуемому конечному результату.
Работа по решению задач с использованием компьютера делится на несколько этапов. Основными этапами при этом является формализация и алгоритмизация решаемой задачи.
На этапе формализации задача переводится на язык математических формул, уравнений, отношений. После формализации описывается алгоритм решения задачи.
Алгоритм является одним из фундаментальных понятий в информатике.
Алгоритм –последовательность действий, описывающая процесс преобразования объекта из начального состояния в конечное, записанная с помощью понятных исполнителю команд.
Исполнителем алгоритма может быть человек или автоматическое устройство – компьютеры, роботы, станки, спутники, сложная бытовая техника и даже детские игрушки. Каждый алгоритм создается в расчете на вполне конкретного исполнителя.
Применительно к компьютерам алгоритм определяет вычислительный процесс, начинающийся с обработки некоторой совокупности возможных исходных данных и направленный на получение результатов. Термин вычислительный процесс распространяется на обработку не только числовой информации, но и других видов информации (символьной, графической или звуковой).
Действия, которые может совершать исполнитель, называют системой команд исполнителя.
Алгоритм должен содержать только те действия, которые допустимы для данного исполнителя.
Свойства алгоритмов:
· дискретность – алгоритм должен представлять процесс решения задачи как последовательное выполнение простых шагов;
· детерминированность –исполнитель должен выполнять команды алгоритма в строго определенной последовательности, каждое действие, предусмотренное алгоритмом, исполняется только после того, как закончилось исполнение предыдущего;
· однозначность– каждая команда определяет однозначное действие исполнителя;
· понятность – понимание исполнителем команд, в алгоритме используются только команды из системы команд исполнителя;
· результативность (конечность) – алгоритм должен приводить к решению задачи за конечное число шагов;
· массовость– один и тот же алгоритм может применяться к большому количеству однотипных задач.