为什么年份返回值为 1,而它应该随着每个循环而增加?



如果一朵花每年长1厘米,那么15.24厘米需要多长时间?

var year = 0
var length = 0.0
while length <= 15.24 {
if length.truncatingRemainder(dividingBy: 1.0) == 0 {
year += 1
}
length += 0.01
}
print(year)

我的方法:

  1. 每次长度为整数时,年递增 1(因为速率为 1 厘米/年(
  2. 目标是计算完全长大需要多长时间(15.24厘米(
  3. 年份应返回 15

为什么它只返回 1?

缩放Int的示例:

var year = 0
var length: Int = 0_00 //1_00 represents 1.00 cm
while length <= 15_24 {
if length % 1_00 == 0 {
year += 1
}
length += 0_01
}
print(year) //-> 16

(下划线 (_( 在 Swift 数字文字中被忽略,添加它只是为了可读性。

似乎你需要修改一点,如果你期望 15。

最新更新