public override double GetValue() { double result = 0; for (int i = 0; i < Arguments.Count; ++i) { FormulaItem item = Arguments[i]; double value = item.GetValue(); if (i == 0) { result = value; continue; } bool flag = Flags[i]; if (flag) { result *= value; } else { result /= value; } } return(result); }
public override double GetValue() { FormulaItem value = Arguments.First(); double arg = value.GetValue(); double result = Math.Abs(arg); return(result); }
public override double GetValue() { FormulaItem baseItem = Arguments[0]; FormulaItem exponentItem = Arguments[1]; double baseValue = baseItem.GetValue(); double exponentValue = exponentItem.GetValue(); return(Math.Pow(baseValue, exponentValue)); }
private void onFormulaChanged(object sender, EventArgs e) { if (!checkBox1.Checked) { return; } try { string pattern = textBox1.Text; FormulaItem formula = _builder.Create(pattern); double value = formula.GetValue(); textBox2.Text = value.ToString(); _element = _converter.Convert(formula); updateTree(formula); panel1.Invalidate(); } catch (Exception exc) { textBox2.Text = "[ERROR]"; _element = null; } }