
- •Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Тамбовский государственный технический университет»
- •Пояснительная записка
- •Подпись, дата инициалы, фамилия
- •Математическое описание методов
- •2.1 Метод половинного деления при приближенном вычислении алгебраических и трансцендентных уравнений
- •2.2 Вычисление определенного интеграла по формуле трапеции
- •2.3 Метод Эйлера для вычисления дифференциального уравнения
- •4 Описание стандартных функций
- •5 Описание нестандартных функций
- •5.1 Метода половинного деления объект Tpoldel
- •5.2 Метод трапеции объект Tmettrap
- •5.3 Метода Эйлера объекта Teyler
- •6 Описание интерфейса
- •7 Численные примеры
5 Описание нестандартных функций
Программа MAIN использует нестандартные модули (modpoldel, modmettrap, modeyler), которые в свою очередь содержат не стандартные процедуры и функции, выполнение которых приводит к выполнению программы. Поэтому описание нестандартных процедур и функций, по сути, сводится к описанию процедур и функций, содержащихся в выше перечисленных модулях.
5.1 Метода половинного деления объект Tpoldel
Процедура poldel содержит пять внутренних переменных типа real, три из них имеют первоначальное значение, также этот объект использует внутреннюю функцию F( ) для расчёта значения функции в точке. Переменной с присваивается значение, численно равное полу сумме переменных а и b. Используя условный оператор if-then мы проверяем условие: значение функции F()в точке a, умноженное на значение функции F( ) в точке c- меньше или равно нулю. Если условие выполняется, используя стандартный модуль присвоения, мы точке b присваиваем значение точки c, иначе точке а присваивается значение точки с. Цикл Repeat-Until позволяет нам добиться нужной точности ответа, так если условие ложно - тело цикла выполняется заново а если условие истинно - цикл завершается. Выше указанный метод использует стандартные процедуры и функции (clrscr, writeln, readln).
5.2 Метод трапеции объект Tmettrap
Данная
процедура использует внутренние
переменные a,b,k,s,e
типа real
и использует внутреннюю функцию F(
) для расчёта интеграла. Переменным
a,b,e
присваивается начальное значение.
Переменной s
присваивается значение, численно равное
полу сумме значений функции в точке a
и в точке b.
Переменная k
равна разности значений a
и e.
В ходе выполнения цикла while
происходит проверка условия (значение
переменной k
должно быть меньше или равно сумме
переменных b
и e).
Если условие выполняется, переменной
k
присваивается сумма переменных k
(предыдущего) и e,
а переменная s
становится равна произведению предыдущего
значения s
на значение функции в точке k.
Далее процедура выводит найденные
значения на экран монитора. Выше указанный
метод использует стандартные процедуры
и функции ( clrscr,
write,
writeln,
readln).
5.3 Метода Эйлера объекта Teyler
Эта процедура использует значительно большее количество внутренних переменных (a,b,e,h,k,s,x,y-real,). Кроме того, она использует внутреннюю функцию F() для расчета уравнения с двумя неизвестными. Начальное значение имеют переменные h,b,x,y , каждое последующее значение x и y заданы формулами. В ходе выполнения цикла while происходит проверка условия (значение переменной х должно входить в интервал от 1 до 5). Если условие выполняется, процедура выводит найденные значения на экран монитора. Выше указанный метод использует стандартные процедуры и функции ( clrscr, writeln, readln).
6 Описание интерфейса
Основная программа MAIN (использующая методы объектно-ориентированного программирования) работает следующим образом. Используя способ запроса, определяет дальнейший ход развития. При получении любого результата отличного от 1,2,3 вновь возвращается на начало программы. Тем самым, исключая возможность ошибочного ввода. При получении ответа соответствующего цифрам 1,2,3 передает управление одному из не стандартных методов, описанных в не стандартных модулях пользователя. При этом выполнение главной программы практически заканчивается за исключением оператора выхода. Управление передается соответственно одному из модулей (modhord, modmettrap, modeyler) или другими словами методам пользователя (hord, mettrap, eyler). Каждый из перечисленных модулей по сути своей представляет отдельную программу, являющуюся составной частью другой. Это позволяет в зависимости от выбора пользователя выполнить тот или иной самостоятельный модуль, входящий в главную программу.
При выборе 1 управление передается модулю modhord (метод hord) выполнение которого приводит к выходу из программы.
Аналогично построены и два других модуля входящих в программу MAIN.