Menu
Coddy logo textTech

Was zu kaufen ist

Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy — Lektion 88 von 88.

challenge icon

Aufgabe

Einfach

Lies eine Einkaufsliste und den Ladenbestand aus der Eingabe ein und bestimme dann, welche Artikel gekauft werden können.

Du erhältst:

  1. Erste Zeile: kommagetrennte Artikelnamen, die deine Einkaufsliste darstellen
  2. Zweite Zeile: die Anzahl der Artikel im Ladenbestand
  3. Folgende Zeilen: jede enthält einen Artikelnamen und eine Menge, getrennt durch ein Komma

Zum Beispiel bedeutet die Bestandseingabe apples,5, dass der Laden 5 Äpfel auf Lager hat.

Drucke für jeden Artikel in deiner Einkaufsliste den Artikelnamen gefolgt von - Yes, wenn er gekauft werden kann, oder - No, wenn nicht.

Ein Artikel kann gekauft werden, wenn:

  • Er im Ladenbestand existiert UND
  • Seine Menge größer als 0 ist

Wenn ein Artikel gar nicht im Bestand ist oder eine Menge von 0 hat, drucke No.

Zum Beispiel, wenn die Eingaben wie folgt sind:

apples,bread,milk
3
apples,5
bread,0
milk,3

Die Ausgabe sollte sein:

apples - Yes
bread - No
milk - Yes

Wenn die Eingaben wie folgt sind:

eggs,butter,cheese,yogurt
2
eggs,12
cheese,0

Die Ausgabe sollte sein:

eggs - Yes
butter - No
cheese - No
yogurt - No

Wenn die Eingaben wie folgt sind:

water
1
water,100

Die Ausgabe sollte sein:

water - Yes

Probier es selbst

# Einkaufsliste einlesen (kommagetrennte Elemente)
shopping_list = gets.chomp.split(',')

# Anzahl der Inventarartikel einlesen
n = gets.to_i

# Ladeninventar einlesen
inventory = {}
n.times do
  line = gets.chomp.split(',')
  item_name = line[0]
  quantity = line[1].to_i
  inventory[item_name] = quantity
end

# TODO: Schreiben Sie Ihren Code unten
# Prüfen Sie für jeden Artikel auf der Einkaufsliste, ob er gekauft werden kann
# Ein Artikel kann gekauft werden, wenn er im Inventar existiert UND die Menge > 0 ist
# Geben Sie "item_name - Yes" oder "item_name - No" für jeden Artikel aus

Alle Lektionen in Grundlagen