let randsign = Int(arc4random_uniform(2) + 1)
//This function returns a random operator
func whatSign(par1:Int)-> String {
if (par1 == 1){
return "+"
}
else {
return "-"
}
}
var sigh = whatSign(par1: randsign)
let randnum1:Any = Int (arc4random_uniform(10) + 1)
let randnum2:Int = Int (arc4random_uniform(10) + 1)
//我想让finVal变量进行数学运算,但因为sign变量是字符串,所以不需要
let finVal = "\(randnum1)\(sigh)\(randnum2)"
print(finVal)
//When I print I get for example 1-3, 9-4, 8+2 .But I wanted them to do arithmetic
发布于 2017-02-15 14:35:41
NSExpression
是评估数学的好方法之一
let finVal = "(randnum1)(sigh)(randnum2)"
let result = NSExpression(format: finVal).expressionValue(with: nil, context: nil) as! Int
发布于 2017-02-15 14:36:58
let randsign = Int(arc4random_uniform(2) + 1)
let randnum1:Any = Int (arc4random_uniform(10) + 1)
let randnum2:Int = Int (arc4random_uniform(10) + 1)
var finVal:Int
//This function returns a random operator
func whatSign(par1:Int)-> String {
//I want to compute the variables and get final result from adding or subtracting them
if (par1 == 1){
finVal = randnum1 + randnum2
return "+"
}
else {
finVal = randnum1 - randnum2
return "-"
}
}
whatSign(par1: randsign)
print(finVal)
//When I print I get for example 1-3, 9-4, 8+2 .But I wanted them to do arithmetic
也许它会对你有帮助
https://stackoverflow.com/questions/42242139
复制相似问题