
- •Курсовой проект
- •Содержание
- •1. Теоретические основы разработки.
- •1.1. Описание предметной области
- •1.2. Анализ методов решения.
- •1.3. Обзор средств программирования.
- •1.4. Описание языка Паскаль.
- •2. Практическая часть
- •2.1. Постановка задачи
- •2.1.1. Основания для разработки
- •2.1.2. Назначение программы
- •2.1.3. Требования к программе
- •2.1.3.1. Требования к функциональным характеристикам
- •2.2. Описание схем
- •2.2.2 Описание схемы процедуры kvadr
- •2.2.3. Описание схемы процедуры koren
- •2.3. Текст программы
- •2 .4. Описание программы
- •2.4.1. Общие сведения
- •2.4.2. Функциональное назначение
- •2.4.3. Описание логической структуры
- •2.4.4. Используемые технические и программные средства
- •2.4.5. Вызов и загрузка
- •2.4.6. Входные и выходные данные
- •2.5. Руководство оператора
- •2.5.1. Назначение программы
- •2.5.2. Условия выполнения
- •2.5.3. Выполнение программы и сообщения оператору
- •2.6. Программа и методика испытаний
- •2.6.1. Объект испытаний
- •2.6.2. Цель испытаний
- •2.6.3. Требования к программе
- •2.6.3.1. Требования к функциональным характеристикам
- •2.6.3.2. Требования к информационной и программной совместимости
- •2.6.3.3. Требования к маркировке и упаковке
- •2.6.4. Требования к программной документации
- •2.6.5. Средства и порядок испытаний
- •2.6.6. Методы испытаний
- •2.6.6.1. Для проверки способности обеспечивать ввод исходных данных
- •2.6.6.2. Для проверки способности решать уравнение с точностью до 0.001 необходимо:
- •2.6.6.3. Для проверки способности выводить результат на экран, принтер или в файл необходимо:
- •2.6.6.3. Для проверки требований к информационной и программной совместимости необходимо:
- •2.7. Протокол испытаний
- •Заключение
- •Список литературы
- •Диалоговое окно для ввода данных
- •Окно с результатами работы программы
- •Сообщение о необходимости включить принтер
2 .4. Описание программы
2.4.1. Общие сведения
Программа cubic предназначена для решения кубических уравнений. Программа написана на языке Турбо-Паскаль 7.0, работает под управлением операционной системы MS DOS 3.2 и выше или Windows 3.11 и выше.
2.4.2. Функциональное назначение
Программа cubic предназначена для нахождения значений действительных корней кубических уравнений, то есть уравнений вида ax3+bx2+cx+d = 0 с точностью до 0.001.
2.4.3. Описание логической структуры
Программа содержит основной модуль, а также 5 процедур и 2 функции:
В начале работы программы осуществляется ввод исходных данных с помощью процедуры VVOD.
Процедура VVOD (строки 49-83 приложения 2) предназначена для обеспечения ввода с клавиатуры значений коэффициентов a,b,c и свободного члена d кубического уравнения. Процедура не имеет входных параметров, а ее выходными параметрами являются значения коэффициентов a, b, c и свободного члена d, а также значение переменной К, равное нулю, если пользователь хочет продолжить работу, или равное единице, если пользователь хочет закончить работу. Для создания удобного пользовательского интерфейса процедура VVOD вызывает процедуру RAMKA
Процедура RAMKA (строки 15-45 приложения 2) предназначена для рисования рамки на экране. Входными параметрами являются координаты левого верхнего угла рамки: Х – номер колонки и Y – номер строчки, а также число колонок в рамке DX и число строчек в рамке DY. Выходных параметров процедура не имеет.
После ввода исходных данных осуществляется вычисление значений корней производной кубического многочлена с помощью процедуры KVARD.
Процедура KVADR (строки 187-206. приложения 2) предназначена для нахождения корней производной кубического многочлена. Входными параметрами процедуры являются значения коэффициентов A,B,C и свободного члена D, а выходными параметрами - число корней производной N и значения корней X1 и X2, причем в случае наличия двух корней должно выполняться неравенство X1<X2. Схема процедуры KVADR приведена на рис. 4 и описана в п.2.3.2.
В зависимости от числа корней производной осуществляется поиск значений корней кубического уравнения на одном или трех интервалах с помощью процедуры KOREN.
Процедура KOREN (строки .208-238 приложения 2) предназначена для нахождения значения корня заданной функции на заданном интервале методом дихотомии (деления пополам). Входными параметрами процедуры являются левая L1 и правая L2 границы интервала, а выходными параметрами - число корней на данном интервале Z и значение корня X. Данная процедура вызывает функцию F(x), вычисляющую значение кубического многочлена при заданном значении х. Схема процедуры KOREN приведена на рис.5 и описана в п.2.3.3.
Функция F(x) (строки 240-243 приложения 2) вычисляет значение кубического многочлена при заданном значении х. Значение х является входным параметром функции, а значения коэффициентов a, b ,c и свободного члена d - глобальными переменными, задаваемыми в основном модуле.
Найденные значения корней кубического уравнения записываются в массив корней, который выводится на экран, принтер или в файл с помощью процедуры VIVOD.
Процедура VIVOD (строки 97-184 приложения 2) предназначена для вывода на экран, принтер или в файл результатов решения кубического уравнения. Входными параметрами процедуры являются значения коэффициентов уравнения a,b,c и свободного члена d, число корней уравнения К и массив значений корней KOR. Выходных параметров процедура не имеет. Процедура запрашивает пользователя, куда он хочет выводить результаты - на экран, принтер или в файл. Если пользователь хочет выводить результаты в файл, то процедура запрашивает также имя файла. Затем осуществляется вывод результатов на заданное устройство по форме приложения 2. Для создания удобного пользовательского интерфейса процедура VIVOD вызывает процедуру RAMKA, описанную ранее. Для вывод на экран числового значения в удобной для пользователя форме используется функция IS.
Функция IS (строки 85-94 приложения 2) предназначена для преобразования числа в символьную строку для вывода. Для преобразования используется формат с 3 знаками после запятой. Входным параметром функции является действительное число. Функция возвращает символьную строку.
Все процедуры, функции и основной модуль находятся в одном исходном файле cubic.pas.
Схема основного модуля приведена на рис.3 и описана в п.2.3.1.
Взаимодействие процедур представлено на рис.6
Программа использует процедуры и функции стандартного модуля CRT среды Турбо-Паскаль 7.0.
Для нормальной работы программы требуется наличие арифметического сопроцессора либо его программной эмуляции, поэтому используется ключ компиляции {$N+}.
Исполняемый файл программы создан средствами среды Турбо-Паскаль 7.0, имеет имя cubic.exe и размер 3547. байт.