Formatowanie wyniku
Część sekcji Podstawy ścieżki Swift w Coddy. Lekcja 41 z 86.
Wyzwanie
ŁatwyW poprzedniej lekcji obliczyłeś, ile płaci każda osoba. Teraz sformatuj wartości pieniężne tak, aby wyświetlały dokładnie 2 miejsca po przecinku, zapewniając dopracowany, profesjonalny wynik.
Użyj String(format:) w Swift, aby sformatować wartości tipAmount, totalWithTip i amountPerPerson tak, by wyświetlały dokładnie 2 miejsca po przecinku.
Specyfikator formatu "%.2f" formatuje wartość Double do 2 miejsc po przecinku:
let formatted = String(format: "%.2f", someDouble)Zaktualizuj wynik, aby był wyświetlany dokładnie w tym formacie:
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]Zwróć uwagę, że symbol $ jest teraz dodawany przed każdą wartością pieniężną, a wszystkie kwoty wyświetlają dokładnie 2 miejsca po przecinku.
Na przykład, jeśli wartości wejściowe to 85.5, 15 i 3, wynik powinien wyglądać tak:
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.78Spróbuj swoich sił
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)")
}
}
}Wszystkie lekcje w sekcji Podstawy
4Operatory, część 1
Operatory arytmetyczneOperator moduloPrzypisanie złożonePodsumowanie — prosta matematykaOperatory porównania7Podstawowe wejście/wyjście
Funkcja printInterpolacja ciągów znakówWejście ReadLineKonwersja typówPowtórka – do 120Powtórka – prawda czy fałsz10Funkcje
Deklarowanie funkcjiParametry i argumentyWartości zwracaneEtykiety argumentówPowtórka – funkcja SigmaPowtórka – funkcja walidującaWartości domyślne2Zmienne
let vs varAdnotacje typówLiczbyŁańcuch znakówWartość logicznaKonwencje nazewnictwaPodsumowanie – inicjalizacja zmiennych5Operatory, część 2
Operatory logiczne, część 1Operatory logiczne, część 2Powtórka – prosta logikaOperatory logiczne, część 3Operator trójargumentowy8Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych wejściowych11FizzBuzz z niespodzianką
Omówienie gryFunkcja FizzBuzz3Typy opcjonalne
Czym są typy opcjonalneRozpakowywanie za pomocą if letGuard letOperator nil-coalescingPodsumowanie — bezpieczne rozpakowywanie6Podejmowanie decyzji
Instrukcja ifIf - ElsePowtórka – prosty kalkulatorInstrukcja switchSwitch z zakresami9Pętle
Pętla for-inPętla whilePętla repeat-whileInstrukcja breakInstrukcja continuePowtórzenie – silniaZakresy w pętlachPętla zagnieżdżonaPowtórzenie – dynamiczne dane wejściowePoćwicz samodzielnie: Edytor online Swift