Funkcja FizzBuzz
Część sekcji Podstawy ścieżki Swift w Coddy. Lekcja 59 z 86.
Wyzwanie
ŁatwyW poprzedniej lekcji napisano kod sprawdzający pojedynczą liczbę pod kątem zasad FizzBuzz. Teraz refaktoryzuj tę logikę, aby umieścić ją w funkcji wielokrotnego użytku.
Utwórz funkcję o nazwie fizzBuzz, która przyjmuje liczbę i zwraca odpowiedni ciąg znaków zgodnie z zasadami FizzBuzz:
- Jeśli liczba jest podzielna zarówno przez 3, jak i przez 5, zwróć
"FizzBuzz" - Jeśli liczba jest podzielna tylko przez 3, zwróć
"Fizz" - Jeśli liczba jest podzielna tylko przez 5, zwróć
"Buzz" - W przeciwnym razie zwróć liczbę jako ciąg znaków
Sygnatura funkcji:
- Nazwa:
fizzBuzz - Parametr:
number(Int) — użyj_, aby pominąć etykietę argumentu - Zwraca:
String
Po zdefiniowaniu funkcji wczytaj jedną liczbę całkowitą ze standardowego wejścia, wywołaj funkcję fizzBuzz z tą wartością i wypisz wynik.
Otrzymasz następujące dane wejściowe:
- Jedna liczba całkowita
Na przykład, jeśli dane wejściowe to 15, dane wyjściowe powinny wyglądać następująco:
FizzBuzzJeśli dane wejściowe to 4, dane wyjściowe powinny wyglądać następująco:
4Spróbuj swoich sił
// Read input
let number = Int(readLine()!)!
// TODO: Write your code below to implement FizzBuzz logic
// Check divisibility by 3 and 5, then print the appropriate result
if number % 3 == 0 && number % 5 == 0 {
print("FizzBuzz")
} else if number % 3 == 0 {
print("Fizz")
} else if number % 5 == 0 {
print("Buzz")
} else {
print(number)
}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