4.Реализация компонентых функций
Класс logarithm
Функции: SetOsn(float OSN);SetNumber(float NUMBER);GetRezult();GetOsn(); GetNumber(); нужны для того, чтобы нельзя было менять параметры напрямую, т.к. это может привести к ошибкам. Внутри них происходит контроль за вводимыми данными и своевременный расчет результата.
Функция calculate() переводит логарифмы в более удобную форму для расчета встроенными средствами из модуля math.
Класс calc
По умолчанию оба оператора имеют вид: log1_1=0, а в качестве операции выбран «+».
Функции: InputLog(int i);GetSt();GetRezult();GetOperation();SetOperation(char OPERATION);void ChangeOsn(float OSN); нужны для того, чтобы нельзя было менять параметры напрямую, т.к. это может привести к ошибкам. Внутри них происходит контроль за вводимыми данными и своевременный расчет результата.
Процедура calculate() производит расчет логарифмов по заданной операции.
5.Реализация диалогов с пользователем
При работе с программой пользователю выводится меню для выполнения желаемых операций.
1: ввести первый оператор
2: показать первый оператор
3: ввести второй оператор
4: показать второй оператор
5: ввести вид операции
6: выполнить переход оператора 1 к заданному основанию
7: вывести результат операции
8: просмотреть лог-файл
9: выход
При вводе операторов, выводится диалог ввода основания и числа логарифма.
При показе операторов, выводится строка вида: log2_8=3.
При переходе к другому основанию операторы 1 и 2 изменяются в соответствии с правилами перехода логарифмов к другому основанию.
При выводе результата операции выводится строка вида: log2_8+log2_8=6.
При выводе лог файла показываются все ранее выведенные на экран результаты (за исключением меню).
6.Реализация основной программы
Основная программа работает в виде цикла: пока пользователь не выберет пункт меню «выход» на экран будет выводиться меню операций.
7.Пример результатов работы программы
1: ввести первый оператор
2: показать первый оператор
3: ввести второй оператор
4: показать второй оператор
5: ввести вид операции
6: выполнить переход оператора 1 к заданному основанию
7: вывести результат операции
8: просмотреть лог-файл
9: выход
1
Введите основание: 2
Введите число: 8
1: ввести первый оператор
2: показать первый оператор
3: ввести второй оператор
4: показать второй оператор
5: ввести вид операции
6: выполнить переход оператора 1 к заданному основанию
7: вывести результат операции
8: просмотреть лог-файл
9: выход
2
log2_8=3
1: ввести первый оператор
2: показать первый оператор
3: ввести второй оператор
4: показать второй оператор
5: ввести вид операции
6: выполнить переход оператора 1 к заданному основанию
7: вывести результат операции
8: просмотреть лог-файл
9: выход
7
log2_8+ log1_1=3
9
8.Программная документация
Файлы входящий в проект:
Calc.cpp
Dialog.cpp
Logarithm.cpp
Main.cpp
Calch
Dialog.h
Logarithm.h
Инструкция пользователю для работы с проектом:
Нельзя вводить 0 в качестве основания или числа логарифма, при этом выводится соответствующее предупреждение, и параметр меняется на 1.
При делении на ноль выводится предупреждение, результат устанавливается в -1.
При переходе к другому основанию, результат представляется в виде дроби двух логарифмов с заданным основанием.
