我已經爲自己設定了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表達式中成功。 –