diff options
Autocommit at 28.05.2022 @ 19:04
1 files changed, 6 insertions, 0 deletions
| -rw-r--r-- | src/Models/CellFormula.cpp | 6 |
diff --git a/src/Models/CellFormula.cpp b/src/Models/CellFormula.cpp index be50ef7..09883c2 100644 --- a/src/Models/CellFormula.cpp +++ b/src/Models/CellFormula.cpp @@ -9,6 +9,12 @@ CellFormula::CellFormula(const char* str) : referencedCells(), formula(), rawFor double CellFormula::calculate(unsigned index) { double lval = formula[index].left->getNumeralValue(); + if (formula[index].right & branch) { + switch (formula[index++].right & !branch) { + case plus: lval += formula[index].left->getNumeralValue(); break; + } + } + switch(formula[index].right) { case plus: return lval + calculate(index++); case minus: return lval - calculate(index++); |
