5. 小青的數學作業

long eval(string expr)
{
    if (expr.Contains("+"))
    {
        var res = expr.Split('+', 2);
        return eval(res[0]) + eval(res[1]);
    }
    var MUT = expr.Split('*', 2);
    return MUT.Length == 1 ? long.Parse(MUT[0]) : long.Parse(MUT[0]) * long.Parse(MUT[1]);
}

while (true)
{
    Console.WriteLine("請輸入運算式:  (輸入 @ 結束)");
    var expr = Console.ReadLine();
    if (expr == "@") break;
    Console.WriteLine("\n妳輸入的運算式為:");
    Console.WriteLine(expr);
    Console.WriteLine("運算結果 = " + eval(expr) % 10000 + "\n");
}

Last updated