Этапы полготовки и решения задач на компьютере.
Подготовка и решение задач на компьютере имеет следующие этапы:
1) постановка задачи и разработка технического задания;
2) разработка:
а) информационной модели решения задачи;
б) математической модели решения задачи;
в) алгоритма для решения задачи;
г) программы для решения задачи на компьютере;
3) документирование разработки и выпуск отчета;
4) счет по разработанной программе и анализ результатов.
Обработка данных в компьютере может быть:
1) числовая: решение задач численными методами;
2) нечисловая: накопление, хранение, поиск, сортировка данных.
Невозможно полностью формализовать постановку достаточно содержательных задач. Постановка задачи включает определение сути задачи, ее исходных данных, совокупности критериев оценки качества процесса обработки данных и состава результатов. Постановка задачи, как правило, завершается разработкой технического задания.
Математическая модель - это описание метода решения задачи. Этот этап включает разработку или выбор численных методов или методов нечисловой обработки данных. На этом этапе может быть определена требуемая точность вычислений, частота счета, предельно допустимое время счета, требуемые ресурсы компьютера для решения задачи. Математическая модель может быть представлена в виде систем математических и логических уравнений и условий выбора вариантов обработки.
Информационная модель отображает состав, структуру и взаимосвязь обрабатываемых данных, файлов и массивов. Она в большой степени определяет структуру и функции подсистем и модулей алгоритма.
Разработка алгоритма решения задачи (алгоритмизация) - один из самых сложных и ответственных этапов. Он включает формализацию процесса обработки данных и представление его в форме, позволяющей упростить дальнейшее кодирование алгоритма, т. е. его запись на одном из алгоритмических языков.
Алгоритмизация включает выделение предполагаемых этапов процесса обработки данных и запись их в определенной форме и последовательности, например в виде схем алгоритмов. При разработке алгоритма возможен выбор существующего алгоритма или программы для решения всей задачи или ее части. В составе современных систем программирования имеются библиотеки подпрограмм, например для решения систем алгебраических или дифференциальных уравнений, разработки интерфейса пользователя.
Структуры алгоритма и программы должны быть организованы так, чтобы допускать внесение добавлений и изменений в процессе их разработки и сопровождения. Программа должна однозначно отображать алгоритм решения задачи.
Разработка программы включает:
1) подготовку тестовых исходных данных;
2) написание текста программы на алгоритмическом языке;
3) перенос программ и данных на машинные носители компьютера;
4) отладку и тестирование программы.
Отладка - это поиск и исправление ошибок программы и алгоритма. Ошибки в программе могут быть синтаксические (формальные) и семантические (смысловые, ошибки алгоритма, логические ошибки). Синтаксические ошибки обнаруживают программы системы программирования.
Обнаружить и исправить их достаточно просто. Семантические ошибки вызваны неправильным пониманием или неверной формализацией задачи. Для выявления этих ошибок используют, например, поэтапное выполнение программы и контроль полученных, заранее известных, результатов, которые определяют, например, из расчетов более простым методом.
Тестирование программы - это проверка правильности ее функционирования во всем диапазоне допустимых значений исходных данных. Для тестирования программы подготавливается система тестов. Каждый тест содержит совокупность исходных данных, для которых известен результат.
Счет и обработка результатов - это получение исходных данных, подготовка их к вводу в компьютер в соответствии с руководством по использованию программы, перенос данных на машинные носители, ввод программы и данных в компьютер, счет по программе и анализ полученных результатов. Основной этап жизни программы состоит в ее многократном использовании для обработки различных вариантов исходных данных.