/
runis-70
/
Formula-Plus
Обзор
Документация
Войти
/
runis-70
/
Formula-Plus
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/forms/calculateForm.cpp
77 строк
1 KB
Денис
feat:/fix (1.0.17) - изменена архитектура математического интерпретатора и начата разработка решения уравнений
29 окт 2024, 15:33
29 окт 2024, 15:33
54f273a
Код
Авторство
О чём код?
#include "calculateForm.h" #include "library/MathCPP/src/interpreter.h" using namespace Interpreter; CalculateForm::CalculateForm(QObject *parent) { } QString CalculateForm::textOutput() { return m_textOutput; } QString CalculateForm::textInput() { return m_textInput; } void CalculateForm::setTextOutput(QString value) { if(m_textOutput != value) { m_textOutput = value; emit textOutputChanged(); } } void CalculateForm::setTextInput(QString value) { if(m_textInput != value) { m_textInput = value; emit textInputChanged(); } } void CalculateForm::operations(QString contentButton) { double result = 0; if(contentButton == "Del") { QString text = textInput(); text.chop(1); setTextInput(text); } else if(contentButton == "1/x") setTextInput("1/" + textInput()); else if(contentButton == "sqrt") setTextInput(textInput() + "sqrt("); else { setTextInput(textInput() + contentButton); } try { result = InterpreteExperssion(textInput().toStdWString()); setTextOutput(QString::number(result)); } catch (...) { setTextOutput(""); } if(contentButton == "=") { setTextInput(textOutput()); setTextOutput(""); } if(contentButton == "C") { setTextOutput("0"); setTextInput(""); } }