Menu
Coddy logo textTech

Atalhos de Array

Parte da seção Fundamentos do Journey de Ruby da Coddy. Lição 64 de 88.

O Ruby oferece atalhos convenientes para criar arrays, especialmente ao trabalhar com strings ou números sequenciais. Esses atalhos economizam tempo e tornam seu código mais limpo.

A sintaxe %w cria um array de strings sem a necessidade de aspas ou vírgulas:

fruits = %w[apple banana cherry]
puts fruits  # Saída: apple, banana, cherry

Isso é equivalente a escrever ["apple", "banana", "cherry"] mas muito mais conciso. Cada palavra separada por um espaço torna-se um elemento separado.

Para arrays de símbolos, use %i:

statuses = %i[pending active completed]
puts statuses  # Saída: pending, active, completed

Para criar arrays de números sequenciais, você pode converter um intervalo em um array usando to_a:

numbers = (1..5).to_a
puts numbers  # Saídas: 1, 2, 3, 4, 5

Você também pode usar o operador splat * dentro de colchetes de array:

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

Estes atalhos são particularmente úteis quando você precisa definir rapidamente uma lista de valores conhecidos sem a poluição visual de aspas e vírgulas.

challenge icon

Desafio

Fácil

Leia duas entradas:

  1. Uma única linha de palavras separadas por espaços (por exemplo, red green blue yellow)
  2. Dois inteiros separados por uma vírgula representando um intervalo (por exemplo, 3,7)

Execute as seguintes tarefas:

  1. Crie um array de strings a partir da primeira entrada usando a sintaxe abreviada %w. Como a entrada já é uma string, você precisará usar split para convertê-la primeiro em um array e, em seguida, demonstrar %w criando um array separado com as palavras alpha, beta, gamma.
  2. Crie um array de símbolos usando %i com os valores start, middle, end.
  3. Crie um array de números sequenciais a partir do intervalo fornecido na segunda entrada usando o operador splat * dentro de colchetes de array.

Imprima o seguinte em linhas separadas:

  1. Cada elemento do array de palavras da entrada
  2. Uma linha em branco
  3. Cada elemento do array %w (alpha, beta, gamma)
  4. Uma linha em branco
  5. Cada elemento do array de símbolos %i
  6. Uma linha em branco
  7. Cada elemento do array do intervalo de números

Por exemplo, se as entradas forem red green blue e 1,5, a saída deverá ser:

red
green
blue

alpha
beta
gamma

start
middle
end

1
2
3
4
5

Se as entradas forem sun moon star e 10,13, a saída deverá ser:

sun
moon
star

alpha
beta
gamma

start
middle
end

10
11
12
13

Experimente você mesmo

# Leia as palavras separadas por espaço
words_input = gets.chomp

# Leia o intervalo (dois inteiros separados por vírgula)
range_input = gets.chomp

# TODO: Escreva seu código abaixo
# 1. Crie um array a partir de words_input usando split
# 2. Crie um array %w com alpha, beta, gamma
# 3. Crie um array %i com start, middle, end
# 4. Analise o intervalo e crie um array usando o operador splat (*)

# Exiba os elementos de cada array em linhas separadas com linhas em branco entre os arrays
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Compilador de Ruby online