我制作了一个通知计算器,用于计算复制的总和,并基于此显示正确的答案。看来效果很好。现在,我还需要2个我不知道如何应用的功能。即,计算一定数量的百分比,例如2 * 0.25 = 0.50。
但是这不起作用,因为我的计算器无法计算十进制数字。我希望我的程序能够根据您的计算结果来计算非十进制数和十进制数。
这是我的代码
private char[] SPACE = new char[] { ' ' };
private void GetAnswer(string clipboardText)
{
var parts = clipboardText.Split(SPACE);
var isValid = true;
int a, b;
// Make sure it's format A # B
if (parts.Length != 3)
return;
// Parse first number
isValid = int.TryParse(parts[0], out a);
if (!isValid)
return;
var validOperators = new char[] { '+', '-', '/', '*' };
// Parse operator
if (parts[1].Length != 1)
return;
var op = parts[1][0];
if (!validOperators.Contains(op))
return;
// Parse 2nd number
isValid = int.TryParse(parts[2], out b);
if (!isValid)
return;
// Now calculate the answer
string answer = null;
switch (op)
{
case '+':
answer = (a + b).ToString();
break;
case '-':
answer = (a - b).ToString();
break;
case '/':
if (b == 0)
answer = "NaN";
else
answer = (a / b).ToString();
break;
case '*':
answer = (a * b).ToString();
break;
default:
throw new InvalidOperationException();
}
// Show the answer
ShowNotification(clipboardText, answer);
}