Menu
Coddy logo textTech

Geschlossen vs. halboffen

Teil des Abschnitts Logik & Kontrollfluss der Swift-Journey von Coddy — Lektion 7 von 56.

Swift hat zwei Range-Operatoren, die fast identisch aussehen, aber unterschiedliche Dinge bedeuten.

a...b ist der geschlossene Bereich. Er schließt b ein:

for i in 1...3 { print(i) }
// 1
// 2
// 3

a..<b ist der halboffene Bereich. Er endet vor b:

for i in 1..<3 { print(i) }
// 1
// 2

Halboffen ist die natürliche Wahl, wenn Sie eine Anzahl haben: 0..<arr.count deckt jeden gültigen Index des Arrays ab. Verwenden Sie geschlossen, wenn beide Enden reale Werte sind, die für Sie von Bedeutung sind (wie ein Punktebereich oder eine inklusive Notengrenze).

challenge icon

Aufgabe

Einfach

Lies zwei Ganzzahlen (zwei Zeilen) ein: a und b, wobei a <= b gilt. Gib drei Zeilen aus:

  1. Die Werte im geschlossenen Bereich a...b, verbunden mit , in einer Zeile
  2. Die Werte im halboffenen Bereich a..<b, verbunden mit , (oder eine leere Zeile, wenn der Bereich leer ist)
  3. Die Summe jedes Wertes im geschlossenen Bereich

Für die Eingabe 1 und dann 5 lautet die Ausgabe:

1,2,3,4,5
1,2,3,4
15

Spickzettel

Bereichsoperatoren in Swift:

  • a...bgeschlossener Bereich, beinhaltet sowohl a als auch b
  • a..<bhalboffener Bereich, beinhaltet a, stoppt aber vor b
for i in 1...3 { print(i) } // 1, 2, 3
for i in 1..<3 { print(i) } // 1, 2

Verwenden Sie 0..<arr.count, um jeden gültigen Array-Index abzudecken. Verwenden Sie geschlossene Bereiche, wenn beide Endpunkte bedeutungsvolle Werte sind.

Probier es selbst

let a = Int(readLine()!)!
let b = Int(readLine()!)!

// TODO: Geschlossenen Bereich verbunden ausgeben, halboffenen Bereich verbunden ausgeben, Summe des geschlossenen Bereichs
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Kontrollfluss