using System.Collections.Generic;
public static void Main()
CalculationEngine engine = new CalculationEngine();
Dictionary<string, double> variables = new Dictionary<string, double>();
Func<Dictionary<string, double>, double> formula1 = engine.Build("var1+2/(3*otherVariable)");
variables.Add("var1", 2);
variables.Add("otherVariable", 4.2);
Console.WriteLine($"Formula 1: {formula1(variables)}");
Func<Dictionary<string, double>, double> formula2 = engine.Build("1+3*4");
Console.WriteLine($"Formula 2: {formula2(variables)}");
Func<Dictionary<string, double>, double> formula3 = engine.Build("(1+3)*4");
Console.WriteLine($"Formula 3: {formula3(variables)}");