Свифт Математика Ответы 0

Я пытаюсь вычислить процент от того, сколько мест доступно на зеленой улице. Когда я делаю расчет (greenStreetSpaces / greenStreetTotalSpaces) * 100, возвращаемый ответ равен 0.

Вот мой код

var greenStreetSpaces = json["carparkData"]["Jersey"]["carpark"][0]["spaces"].intValue
            print(greenStreetSpaces)
            var greenStreetTotalSpaces = 608
            print(greenStreetTotalSpaces)

            let greenStreetPercent = (greenStreetSpaces / greenStreetTotalSpaces) * 100
            print(greenStreetPercent)

и консоль от меня распечатывает результаты.

Фрагмент соответствующих результатов на консоли

1 ответ

Решение

Этот оператор "/", примененный к 2 целым числам, возвращает целочисленную часть деления

пример

let greenStreetSpaces = 10
let greenStreetTotalSpaces = 15

greenStreetSpaces / greenStreetTotalSpaces // 0

Чтобы решить проблему, вы должны разделить Doubles

(Double(greenStreetSpaces) / Double(greenStreetTotalSpaces)) * 100 // 66.66666666666666
Другие вопросы по тегам