Menu
Coddy logo textTech

Was ist eine Range?

Teil des Abschnitts Logik & Programmfluss der Ruby-Journey von Coddy — Lektion 6 von 56.

Du hast bereits Ranges mit for-Schleifen und Array-Slicing verwendet. Aber eine Range ist ein echtes Ruby-Objekt, nicht nur Syntax; sie hat ihre eigenen Methoden.

Erstellen Sie einen mit .. (zwei Punkte, inklusiv) oder ... (drei Punkte, exklusiv des Endwerts):

inclusive = 1..5    # 1, 2, 3, 4, 5
exclusive = 1...5   # 1, 2, 3, 4

Konvertieren Sie einen Bereich mit to_a in ein Array, um genau zu sehen, was er abdeckt:

puts (1..5).to_a.inspect    # [1, 2, 3, 4, 5]
puts (1...5).to_a.inspect   # [1, 2, 3, 4]

Bereiche (Ranges) sind nicht nur für Zahlen gedacht. Sie funktionieren mit allem, was eine Reihenfolge hat, einschließlich Buchstaben:

puts ("a".."e").to_a.inspect  # ["a", "b", "c", "d", "e"]
challenge icon

Aufgabe

Anfänger

Lies zwei Ganzzahlen (zwei Eingabezeilen) ein: einen start und einen end_value. Gib drei Zeilen aus:

  1. Den inklusiven Bereich start..end_value als Array (verwende inspect)
  2. Den exklusiven Bereich start...end_value als Array
  3. Die Größe des inklusiven Bereichs

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

[1, 2, 3, 4, 5]
[1, 2, 3, 4]
5

Spickzettel

Bereiche in Ruby verwenden .. (inklusiv) oder ... (exklusiv des Endes):

inclusive = 1..5    # 1, 2, 3, 4, 5
exclusive = 1...5   # 1, 2, 3, 4

Konvertieren Sie einen Bereich mit to_a in ein Array:

puts (1..5).to_a.inspect    # [1, 2, 3, 4, 5]
puts (1...5).to_a.inspect   # [1, 2, 3, 4]

Bereiche funktionieren auch mit Buchstaben:

puts ("a".."e").to_a.inspect  # ["a", "b", "c", "d", "e"]

Probier es selbst

start     = gets.to_i
end_value = gets.to_i

# TODO: Den inklusiven Bereich, den exklusiven Bereich und die inklusive Größe ausgeben
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 & Programmfluss