let someInt: Int = 3
let someOtherInt: Int = 5
Это не будет работать
print(Float(someInt/someOtherInt))
//"0.0"
Это будет
print(Float(someInt)/Float(someOtherInt))
//"0.6"
Причина в том, что в первом сценарии вы инициализируете Float с результатом целочисленного деления , в результате которого результат округляется до целого числа по характеру операции.
Второй сценарий включает в себя явное деление двух чисел с плавающей запятой , поэтому результатом также будет число с плавающей запятой и обработка десятичных чисел.