Geschlossen vs. halboffen
Teil des Abschnitts Logik & Kontrollfluss der Swift-Journey von Coddy. Lektion 7 von 56.
Swift hat zwei Bereichsoperatoren, die fast identisch aussehen, aber unterschiedliche Bedeutungen haben.
a...b ist der geschlossene Bereich. Er umfasst b:
for i in 1...3 { print(i) }
// 1
// 2
// 3a..<b ist der halboffene Bereich. Er endet vor b:
for i in 1..<3 { print(i) }
// 1
// 2Halboffene Intervalle passen natürlich, wenn du eine Anzahl hast: 0..<arr.count deckt jeden gültigen Index des Arrays ab. Verwende geschlossene Intervalle, wenn beide Enden reale Werte sind, die dich interessieren (etwa bei einem Punktebereich oder einer inklusiven Notengrenze).
Aufgabe
EinfachLies zwei Ganzzahlen (zwei Zeilen): a und b, wobei a <= b gilt. Gib drei Zeilen aus:
- Die Werte im geschlossenen Bereich
a...b, in einer Zeile mit,verbunden - Die Werte im halboffenen Bereich
a..<b, mit,verbunden (oder eine leere Zeile, wenn der Bereich leer ist) - Die Summe jedes Werts im geschlossenen Bereich
Für die Eingabe 1 und anschließend 5 lautet die Ausgabe:
1,2,3,4,5
1,2,3,4
15Probier es selbst
let a = Int(readLine()!)!
let b = Int(readLine()!)!
// TODO: geschlossenen Bereich verbunden ausgeben, halb-offenen Bereich verbunden ausgeben, Summe des geschlossenen Bereichs
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Kontrollfluss
1Strings im Detail
Zählen und IndizesGroß-/Kleinschreibung und TrimSuchen in StringsAufteilen und ZusammenfügenTeilstrings ersetzenRückblick – Benutzernamen prüfen4Mengen
Mengen erstellenVereinigung und SchnittmengeSubtraktion und symmetrische DifferenzTeilmenge und ObermengeWiederholung – Tag-Filter7Projekt – Gewohnheitstracker
ProjektübersichtAls erledigt markieren2Bereiche & Schrittweiten
Geschlossen vs. halboffenSchrittweiteBereichsmethodenBereiche in SwitchRückblick – Kalender-Raster5Funktionen höherer Ordnung Teil 1
MapFilterReduceVerketten von Map, Filter und ReduceRückblick – WortstatistikÜbe selbstständig: Swift-Playground