Menu
Coddy logo textTech

Форматированный вывод

Часть раздела Основы путешествия по Swift на Coddy — урок 41 из 86.

challenge icon

Задание

Легко

В предыдущем уроке вы рассчитали, сколько платит каждый человек. Теперь отформатируйте денежные значения так, чтобы они отображали ровно 2 знака после запятой для получения аккуратного и профессионального результата.

Используйте метод Swift String(format:), чтобы отформатировать значения tipAmount, totalWithTip и amountPerPerson для отображения ровно 2 знаков после запятой.

Спецификатор формата "%.2f" форматирует Double до 2 знаков после запятой:

let formatted = String(format: "%.2f", someDouble)

Обновите ваш вывод, чтобы он печатался именно в таком формате:

Welcome to the Bill Split Calculator!
Bill: [billTotal]
Tip: [tipPercentage]%
People: [numberOfPeople]
Tip amount: $[tipAmount formatted]
Total with tip: $[totalWithTip formatted]
Each person pays: $[amountPerPerson formatted]

Обратите внимание, что символ $ теперь добавлен перед каждым денежным значением, и все суммы отображают ровно 2 знака после запятой.

Например, если входные данные равны 85.5, 15 и 3, вывод должен быть следующим:

Welcome to the Bill Split Calculator!
Bill: 85.5
Tip: 15%
People: 3
Tip amount: $12.83
Total with tip: $98.33
Each person pays: $32.78

Попробуйте сами

print("Welcome to the Bill Split Calculator!")

if let billInput = readLine(), let billTotal = Double(billInput) {
    if let tipInput = readLine(), let tipPercentage = Int(tipInput) {
        if let peopleInput = readLine(), let numberOfPeople = Int(peopleInput) {
            let tipAmount = billTotal * Double(tipPercentage) / 100
            let totalWithTip = billTotal + tipAmount
            let amountPerPerson = totalWithTip / Double(numberOfPeople)
            
            print("Bill: \(billTotal)")
            print("Tip: \(tipPercentage)%")
            print("People: \(numberOfPeople)")
            print("Tip amount: \(tipAmount)")
            print("Total with tip: \(totalWithTip)")
            print("Each person pays: \(amountPerPerson)")
        }
    }
}

Все уроки раздела Основы