Разработка калькулятора, решающего системы уравнений с тремя неизвестными
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
системыА[0][0]…А[0][n] B[0] ………………………. A[n][0]…A[n][n] B[n]На экран, в файл log.txtОпределитель detКоэффициенты искомой матрицы Х, т. е. неизвестные коэффициенты системы уравненийХ[i]
1.4 Требования к надежности
Все ошибки, возникающие при выполнении программы, возможная реакция программы на них и методы их исправления представлены в таблице 3.
Таблица 3 - Требования к надежности
Причина возникновения ошибкиРеакция программыМетод ее исправленияВвод несуществующего пункта меню.Выдается сообщение, повторяется запрос.Заново ввести данныеВвод неверного формата числаВыдается сообщение, повторяется запросЗаново ввести данныеИсходные данные не соответствуют требуемому типуВыдается сообщение, повторяется запрос.Заново ввести данные Невозможно открыть файлВыдается сообщение об ошибкеПроверить существование файла.
2. Проектирование программного модуля
.1 Структурная диаграмма программного модуля
Иерархическая структура алгоритма представлена на рисунке 1.
Рисунок 1- Структурная диаграмма программного модуля
int main - основная функция программы.
int menu - вывод основного меню на экран и возврат номера выбранной функции.
double control - контроль формата вводимых значений.
float dop - вычисление алгебраического дополнения.
2.2 Разработка схемы программного модуля и ее описание
Рисунок 2- Блок- схема функции menu.
уравнение линейный программа тестирование
Рисунок 3.Лист 1- Блок-схема функции dop
Рисунок 3.Лист 2 - Блок- схема функции dop.
Рисунок 4.Лист 1 - Блок-схема функции main
Рисунок 4.Лист 2 - Блок-схема функции main
Рисунок 4.Лист 3 - Блок-схема функции main
Рисунок 4.Лист 3 - Блок-схема функции main
Рисунок 4.Лист 4 - Блок-схема функции main
Рисунок 4.Лист 5 - Блок-схема функции main
2.3 Разработка пользовательского интерфейса
Пользовательский интерфейс представлен в виде меню, в котором пункты выбираются с помощью нажатия соответствующей клавиши. При выборе первого пункта меню пользователь будет вводить исходные данные. При неверном вводе некоторых элементов можно отредактировать данные с помощью пункта меню Редактирование данных (рис.6).
Рисунок 5- Иерархия меню
Рисунок 6 - Ввод и редактирование данных
При выборе пункта меню Вывод решения, пользователь увидит содержимое файла log.txt.
Рисунок 7-Вывод решения
3. Тестирование программного модуля
Тестирование разработанной программы представлено в таблице 4.
Таблица 4 - Тестирование программного модуля
Описание тестаВходные данныеРеакция программыТребуемое действиеТест 1: Ввод несуществующего пункта меню.Ввод: 6Сообщение об ошибке ввода: Такого пункта нет! Введите от 1 до5.Повторить ввод пункта меню.Тест 2: Ввод пункта меню буквами или другими знаками, кроме цифр.Ввод: рСообщение об ошибке ввода: Такого пункта нет! Введите от 1до 5.Ввод пункта меню цифрами.Тест 3: Пункт меню не был введен.Ввод: (нет)Сообщение об ошибке ввода: Такого пункта нет! Введите от 1до 5.Ввести пункт меню.Тест 4: Ввод исходных данных (коэффициентов уравнения) другими знаками, кроме цифр.Запрос: Введите коэффициенты уравнений. Ввод: уСообщение об ошибке: ОШИБКА! Неверный формат числа. Введите значения заново.Ввод исходных данных цифрами.Тест 5: Ввод индекса редактируемого элемента другими знаками, кроме цифр.Запрос: Введите индекс редактируемого элемента . Ввод: kСообщение об ошибке ввода: ОШИБКА! Неверный формат числа. Введите значения заново.Ввод редактируемого элемента цифрами.Тест 6: Исходные данные введены правильно ( в том числе и пункт меню). Проверка правильности вычислений.Запрос: Введите коэффициенты уравнений: Ввод: A[1][1]=1 A[1][2]=2 A[1][3]=3 B[1]=4 A[2][1]=5 A[2][2]=6 A[2][3]=7 B[2]=8 A[3][1]=9 A[3][2]=1 A[3][3]=2 B[3]=3Вывод результатов вычислений. Определитель=-36.00 Искомая матрица: Х=. При расчетах в Excel получены результаты -36.00 0 -1 2
Заключение
В данном курсовом проекте была рассмотрена задача разработки программы, имитирующей работу калькулятора, где вид обрабатываемых данных: система уравнений с тремя неизвестными. Алгоритм программы реализован в среде Visual C++ 6.0. Выполнены все пункты задания. В программе предусмотрена обработка большого количества ошибок ввода. Тестирование показало, что программа