我已经为自己设定了RPN计算器的挑战。我有一个列表,其中包含所使用的数字(按顺序)以及另一个使用了操作符的列表(按照字符顺序)。我怎样才能创建一个函数,将从列表1中取[0],从列表2中取[0],然后从列表1中取得[1],然后从列表2取得[1] ...但是当从列表2中取值为char时,将其转换为可用于计算的实际运算符? - 谢谢将char(又名:'+')转换为运算符
static int cal()
{
string[] store = input.Split(' ');
List<int> num = new List<int>();
List<char> op = new List<char>();
foreach (string i in store)
{
if (Convert.ToInt32(i)/Convert.ToInt32(i) == 1)
{
num.Add(Convert.ToInt32(i));
}
else
{
op.Add(Convert.ToChar(i));
}
}
}
你一定要明白,一个RPN处理器需要一个堆栈吗?你的整个方法对于2个单独的列表是无效的,并且将永远不会在比2个操作数复杂的RPN表达式中成功。 –