我的程序中有许多弦方程式的变体。
“1+9 X 8”
“4+ 6”
“5/9+ 7”
“3 X 8”
所以,我想要做的是执行计算,并给出结果。然而,我不能想出一种方法来读取运算符字符("+ /X +")并将其拟合到等式中。希望我的问题是清楚的。
注意:我能够读取数字字符,这是一个简单的字符串到Int的转换。但是,我在将字符(“X/+ -")的字符串等价物转换为其运算符时遇到了困难。我该怎么做呢?
如果这是不可能的,有人可以建议一个解决办法。
发布于 2018-01-17 16:31:55
试试这样的东西
var s = " 1 + 9 X 8"
s = s.replacingOccurrences(of: "X", with: "*")
let expn = NSExpression(format:s)
print("\(expn.expressionValue(with: nil, context: nil) ?? 0)")
https://stackoverflow.com/questions/48296517
复制相似问题