using System.Collections.Generic;
public static void Main()
string expression = "12-2";
var parsedRawExpression = ParseExpression(expression);
double result = EvaluateTwoNumbers(parsedRawExpression[0], parsedRawExpression[1], parsedRawExpression[2]);
Console.WriteLine("Calculation result: {0} = {1}", expression, result);
public static double EvaluateTwoNumbers(string number_1, string number_2, string arithmathicOp)
double a = double.Parse(number_1);
double b = double.Parse(number_2);
if (arithmathicOp == "+")
else if (arithmathicOp == "-")
throw new ArgumentException("invalid operation");
public static List<string> ParseExpression(string expression)
List<string> parsedRaw = new List<string>();
if (string.IsNullOrWhiteSpace(expression))
throw new ArgumentException("expression can not be empty");
if (expression.Contains("+"))
var parsedRawArr = expression.Split('+');
parsedRaw.Add(parsedRawArr[0]);
parsedRaw.Add(parsedRawArr[1]);
else if (expression.Contains("-"))
var parsedRawArr = expression.Split('-');
parsedRaw.Add(parsedRawArr[0]);
parsedRaw.Add(parsedRawArr[1]);
throw new ArgumentException("expression is not valid");