Menu
Coddy logo textTech

Skróty dotyczące tablic

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

Ruby oferuje wygodne skróty do tworzenia tablic, szczególnie podczas pracy z ciągami znaków lub kolejnymi liczbami. Te skróty oszczędzają czas i sprawiają, że kod jest bardziej przejrzysty.

Składnia %w tworzy tablicę ciągów znaków bez konieczności używania cudzysłowów ani przecinków:

fruits = %w[apple banana cherry]
puts fruits  # Wyświetla: apple, banana, cherry

Jest to równoważne zapisaniu ["apple", "banana", "cherry"], ale znacznie bardziej zwięzłe. Każde słowo oddzielone spacją staje się osobnym elementem.

W przypadku tablic symboli użyj %i:

statuses = %i[pending active completed]
puts statuses  # Wyświetla: pending, active, completed

Aby utworzyć tablice kolejnych liczb, możesz przekonwertować zakres na tablicę za pomocą to_a:

numbers = (1..5).to_a
puts numbers  # Wypisuje: 1, 2, 3, 4, 5

Możesz też użyć operatora splat * wewnątrz nawiasów tablicy:

countdown = [*5..10]
puts countdown  # Wypisuje: 5, 6, 7, 8, 9, 10

Te skróty są szczególnie przydatne, gdy chcesz szybko zdefiniować listę znanych wartości bez wizualnego bałaganu związanego z cudzysłowami i przecinkami.

challenge icon

Wyzwanie

Łatwy

Wczytaj dwa dane wejściowe:

  1. Jeden wiersz ze słowami oddzielonymi spacjami (np. red green blue yellow)
  2. Dwie liczby całkowite oddzielone przecinkiem, reprezentujące zakres (np. 3,7)

Wykonaj następujące zadania:

  1. Utwórz tablicę ciągów znaków z pierwszego wejścia, używając skróconej składni %w. Ponieważ dane wejściowe są już ciągiem znaków, najpierw użyj split, aby przekształcić go w tablicę, a następnie zademonstruj użycie %w, tworząc osobną tablicę ze słowami alpha, beta, gamma.
  2. Utwórz tablicę symboli, używając %i z wartościami start, middle, end.
  3. Utwórz tablicę kolejnych liczb z zakresu podanego w drugim wejściu, używając operatora splat * wewnątrz nawiasów tablicy.

Wypisz poniższe elementy w osobnych wierszach:

  1. Każdy element tablicy słów z wejścia
  2. Pusty wiersz
  3. Każdy element tablicy %w (alpha, beta, gamma)
  4. Pusty wiersz
  5. Każdy element tablicy symboli %i
  6. Pusty wiersz
  7. Każdy element tablicy zakresu liczb

Na przykład, jeśli dane wejściowe to red green blue i 1,5, wynik powinien być następujący:

red
green
blue

alpha
beta
gamma

start
middle
end

1
2
3
4
5

Jeśli dane wejściowe to sun moon star i 10,13, wynik powinien być następujący:

sun
moon
star

alpha
beta
gamma

start
middle
end

10
11
12
13

Spróbuj swoich sił

# Wczytaj słowa oddzielone spacjami
words_input = gets.chomp

# Wczytaj zakres (dwie liczby całkowite oddzielone przecinkiem)
range_input = gets.chomp

# TODO: Napisz swój kod poniżej
# 1. Utwórz tablicę z words_input za pomocą split
# 2. Utwórz tablicę %w zawierającą alpha, beta, gamma
# 3. Utwórz tablicę %i zawierającą start, middle, end
# 4. Przetwórz zakres i utwórz tablicę za pomocą operatora splat (*)

# Wypisz elementy każdej tablicy w osobnych wierszach, pozostawiając puste wiersze między tablicami
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