我正在尝试创建一个循环,对我的范围变量中的每个数字进行平方,然后找到该数字的平方根。
import UIKit
var range = 0..<10
var square = 0.0
var root = 0.0
for i in range {
square = i * i
root = sqrt(square)
print(square)
}
我现在的错误是“无法将类型Int的值分配给Double”。将范围变量转换为双精度时也会出错。
提前感谢您的帮助。
答案 0 :(得分:0)
var range = 0..<10
var square: Double = 0.0
var root: Double = 0.0
for i in range {
square = Double(i * i)
root = sqrt(square)
print(square)
}
你想要做的是将整数改为Double,因为正方形我已经是Double(正如我在答案中明确指出的那样)
它非常简单,你无法在范围循环中搜索Double,这真的很奇怪......你可能想要做的是使用步幅函数,参见
https://developer.apple.com/documentation/swift/1641347-stride
快乐的编码! :)
答案 1 :(得分:0)
尝试使用square = Double(i * i)
代替square = i * i
。