Этапы решения задачи.

Универсальный исполнитель.

Один из важнейших вопросов теоретической информатики – существует ли такой формальный исполнитель, с помощью которого можно имитировать любо формального исполнителя? Такого исполнителя естественно называть универсальным.Легко понять что как физическое устройство универсальный исполнитель не существует – так как информация может кодироваться как угодно длинными сообщениями, а любой физический носитель конечен. Если же вести речь об универсальном исполнителе как об идеальном объекте, то ответ на данный вопрос будет положительным и получен он был весьма одновременно двумя разными выдающимися учеными А. Тьюрингом (в 1936 г.) и Э. Постом(в 1937г.).

Универсального исполнителя принято называть машиной и также принято давать машинам имена их создателей.

Введение в рассмотрение понятия «исполнитель» позволяет определить алго­ритм как понятное и точное предписание исполнителю совершить последователь­ность действий, направленных на достижение поставленной цели. Слово алгоритм произошло от algorithmi – латинской формы написания имени великого математика аль-Хорезми (9 в. Н.э.), который сформулировал правила выполнения основных арифметических операций. Первоначально под алгоритмами и понимали правила вычисления четырех арифметических операций над многозначными числами, в дальнейшем это понятие стали использовать вообще для обозначения последовательности действий, приводящих к результату.

Компьютер – автоматический исполнитель алгоритмов. Алгоритм, написанный на понятном компьютеру языке программирования, называется программой.

 

1. Постановка задачи (выполняется заказчиком, в качестве которого может выступать внешняя организация, организация, в которой работает программист, начальник программиста, преподаватель и т.п. Задача формулируется на естественном языке);

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

3. Выбор или разработка алгоритма решения задачи – необходимое условие эффективной работы по составлению программы;

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

5. Кодирование(запись алгоритма на языке программирования);

6. Отладка и верификация программы(отладка – устранение ошибок в программе, верификация – доказательство того, что программа работает правильно, для этого разрабатывается система тестов с заранее известными результатами решения задачи);

7. Получение результата, его верификация, и возможно, последующая модификация модели(проверка на соответствие результатов решения задачи с помощью компьютера с результатами наблюдений);

8. Публикация или передача заказчику результата работы;

9. Сопровождение программы.