Menu
Coddy logo textTech

Metoda Include?

Część sekcji Podstawy ścieżki Ruby w Coddy. Lekcja 72 z 88.

Podczas pracy z tablicami często trzeba sprawdzić, czy istnieje konkretny element, zanim wykona się jakąś czynność. Metoda Ruby include? bezpośrednio odpowiada na to pytanie, zwracając true lub false.

fruits = ["apple", "banana", "orange"]

puts fruits.include?("banana")  # Wypisuje: true
puts fruits.include?("grape")   # Wypisuje: false

Metoda sprawdza dokładne dopasowanie, więc w przypadku ciągów znaków rozróżnia wielkość liter:

colors = ["Red", "Green", "Blue"]

puts colors.include?("Red")  # Wypisuje: true
puts colors.include?("red")  # Wypisuje: false

Ta metoda jest szczególnie przydatna w instrukcjach warunkowych. Zamiast przeszukiwać tablicę w pętli, aby znaleźć element, możesz po prostu zapytać, czy się w niej znajduje:

allowed_users = ["alice", "bob", "charlie"]
current_user = "bob"

if allowed_users.include?(current_user)
  puts "Access granted"
else
  puts "Access denied"
end

Metoda include? działa z dowolnym typem danych przechowywanym w tablicy, w tym z liczbami, symbolami, a nawet innymi tablicami.

challenge icon

Wyzwanie

Łatwy

Wczytaj dwa wiersze danych wejściowych:

  1. Listę dostępnych produktów w sklepie, zapisanych jako ciągi znaków rozdzielone przecinkami (np. apple,banana,orange,milk,bread)
  2. Listę produktów z Twojej listy zakupów, zapisanych jako ciągi znaków rozdzielone przecinkami (np. banana,eggs,milk,cheese)

Dla każdego produktu z listy zakupów sprawdź, czy jest dostępny w sklepie, używając metody include?. Wypisz każdy produkt, a po nim Available lub Not available, w zależności od tego, czy znajduje się w asortymencie sklepu.

Pamiętaj, że include? sprawdza dokładne dopasowania, więc przy porównaniu rozróżniana jest wielkość liter.

Na przykład, jeśli dane wejściowe to apple,banana,orange,milk,bread i banana,eggs,milk,cheese, wynikiem powinno być:

banana - Available
eggs - Not available
milk - Available
cheese - Not available

Jeśli dane wejściowe to Red,Green,Blue i red,Green,Yellow, wynikiem powinno być:

red - Not available
Green - Available
Yellow - Not available

Jeśli dane wejściowe to coffee,tea,juice i coffee,water,tea, wynikiem powinno być:

coffee - Available
water - Not available
tea - Available

Jeśli dane wejściowe to pen,pencil,eraser i pen, wynikiem powinno być:

pen - Available

Spróbuj swoich sił

# Wczytaj asortyment sklepu (produkty oddzielone przecinkami)
store_items = gets.chomp.split(",")

# Wczytaj listę zakupów (produkty oddzielone przecinkami)
shopping_list = gets.chomp.split(",")

# TODO: Napisz swój kod poniżej
# Dla każdego produktu z listy zakupów sprawdź, czy jest dostępny w sklepie
# używając metody include?, i wypisz wynik
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Ruby online