Выполнить анализ кода нажатой в ответ на запрос клавиши: при нажатии “Y” повторить ввод снова, при нажатии “N” перейти в окно с меню.
Алгоритм поиска решения системы уравнений методом Рунге-Кутта-Мерсона в подпрограмме процедуре rukutm включает:
Создание окно для ввода исходных данных и вывода результатов вычисления.
Восстановления отображение курсора нормального размера соответствующей подпрограммой - процедурой.
Задание начального шаг-h, начальных значений xо,y10,…,yN0 и точности вычисления- ε.
Подпрограмме-процедуре задаём вид системы дифференциальных уравнений
В подпрограмме-функции задаём вид правой части уравнений
С помощью пяти циклов с управляющей переменной J=1,N вычисляем коэффициенты по формулам (7)-(11).
В последнем цикле находим решение системы дифференциальных уравнений по формуле (12) и погрешность по формуле (13).
Проверка выполнение условий (14) и (15). Если первое условие не выполняется то h:=h/2 и переходим к п.5.
Если выполняются оба условия, то значение xi+1=xi+h и Yj(i+1) выводим на экран.
Если второе условие не выполняется, то h:=h+h и переходим к п.5.
Вывести результаты вычислений в том же окне.
Вывести в окне запрос о продолжении вычислений с новыми исходными данными.
Выполнить анализ кода нажатой в ответ на запрос клавиши: при нажатии “Y” пoвторить ввод снова , при нажатии “N” перейти в окно с меню.
4. Идентификаторы программы
Для указания соответствия обозначений переменных в формулах математической формулировки и их идентификаторов в программе сведем их в таблицу 1:
Таблица 1
| Обозначение параметров | Смысл параметра | |
| В формулах | В программе | |
| Y1…Yn | Y[1]…Y[n] | Начальные приближения |
| ε | E | Точность результата |
| h | H | Шаг интегрирования |
| Кij | K[j] | Коэффициенты погрешности |
| N | n | Количество уравнений |
| | F[1] | Первое уравнение системы |
| | F[2] | Второе уравнение системы |
Остальные идентификаторы являются промежуточными или служебными.
5. Блок-схема алгоритма
5.1 Блок-схема алгоритма головной программы
Нет Да
Да Нет Да Нет
5.2 Блок-схема алгоритма подпрограммы–процедуры runkut
| |
| |
| |
| | ||
| | ||
| | ||
| |
| e3:=0; |
| | ||
| | ||
| | ||
| |
| |