Bird
Raised Fist0
Rubyprogramming~10 mins

Accessing elements (indexing, first, last) in Ruby - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to get the first element of the array.

Ruby
arr = [10, 20, 30]
first_element = arr.[1]
Drag options to blanks, or click blank then click option'
Apop
Blast
Cfirst
Dshift
Attempts:
3 left
💡 Hint
Common Mistakes
Using last instead of first.
Using pop which removes the last element.
2fill in blank
medium

Complete the code to get the last element of the array.

Ruby
numbers = [5, 15, 25, 35]
last_num = numbers.[1]
Drag options to blanks, or click blank then click option'
Afirst
Bpop
Cshift
Dlast
Attempts:
3 left
💡 Hint
Common Mistakes
Using pop which removes the last element instead of just accessing it.
Using first which returns the first element.
3fill in blank
hard

Fix the error in the code to access the second element of the array.

Ruby
items = ['apple', 'banana', 'cherry']
second_item = items[[1]]
Drag options to blanks, or click blank then click option'
A1
B2
C0
D-1
Attempts:
3 left
💡 Hint
Common Mistakes
Using 2 which is the third element.
Using 0 which is the first element.
4fill in blank
hard

Fill both blanks to create a hash with words as keys and their lengths as values, only for words longer than 3 letters.

Ruby
words = ['cat', 'lion', 'tiger', 'dog']
lengths = {word => word.[1] for word in words if word.length [2] 3}
Drag options to blanks, or click blank then click option'
Alength
Bsize
C>
D<
Attempts:
3 left
💡 Hint
Common Mistakes
Using size which also works but is less common here.
Using < which filters shorter words.
5fill in blank
hard

Fill all three blanks to create a hash with uppercase words as keys, their original words as values, only if the word length is greater than 3.

Ruby
words = ['ant', 'bear', 'cat', 'dog']
result = {word.[1] => word.[2] for word in words if word.length [3] 3}
Drag options to blanks, or click blank then click option'
Aupcase
Bto_s
C>
Dlength
Attempts:
3 left
💡 Hint
Common Mistakes
Using length as a key method instead of upcase.
Using < instead of > in the condition.

Practice

(1/5)
1. Which method or syntax in Ruby returns the first element of an array arr?
easy
A. arr.last
B. arr[1]
C. arr[-1]
D. arr.first

Solution

  1. Step 1: Understand the purpose of .first

    The .first method returns the first element of an array in Ruby.
  2. Step 2: Compare with other options

    arr[1] returns the second element (indexing starts at 0), arr.last and arr[-1] return the last element.
  3. Final Answer:

    arr.first -> Option D
  4. Quick Check:

    First element = arr.first [OK]
Hint: Use .first to get the first element easily [OK]
Common Mistakes:
  • Using arr[1] instead of arr[0] for first element
  • Confusing .last with .first
  • Using negative index for first element
2. Which of the following is the correct syntax to get the last element of an array arr in Ruby?
easy
A. arr.first
B. arr[0]
C. arr[-1]
D. arr[1]

Solution

  1. Step 1: Understand negative indexing in Ruby arrays

    Negative indexes count from the end, so arr[-1] returns the last element.
  2. Step 2: Check other options

    arr[0] is the first element, arr.first also returns first, and arr[1] is second element.
  3. Final Answer:

    arr[-1] -> Option C
  4. Quick Check:

    Last element = arr[-1] [OK]
Hint: Use negative index -1 to get last element [OK]
Common Mistakes:
  • Using arr[1] thinking it's last element
  • Using arr.first instead of arr.last
  • Using arr[-0] which is invalid
3. What is the output of the following Ruby code?
arr = [10, 20, 30, 40, 50]
puts arr[2]
puts arr.first
puts arr[-2]
medium
A. 40 10 30
B. 30 10 40
C. 30 50 40
D. 20 10 50

Solution

  1. Step 1: Evaluate arr[2]

    Index 2 is the third element, which is 30.
  2. Step 2: Evaluate arr.first and arr[-2]

    arr.first is 10 (first element), arr[-2] is second last element, 40.
  3. Final Answer:

    30 10 40 -> Option B
  4. Quick Check:

    Index 2 = 30, first = 10, second last = 40 [OK]
Hint: Remember index starts at 0; negative counts from end [OK]
Common Mistakes:
  • Confusing index 2 with index 3
  • Mixing up first and last elements
  • Misunderstanding negative indexes
4. The following Ruby code throws an error. What is the problem?
arr = [5, 10, 15]
puts arr.first()
puts arr[-4]
medium
A. Negative index -4 is out of range and returns nil, no error
B. Missing argument in first() causes error
C. Array is empty, so first() fails
D. Syntax error in calling first()

Solution

  1. Step 1: Check arr.first() usage

    first() can be called with or without parentheses; no error here.
  2. Step 2: Analyze arr[-4]

    Array has 3 elements, so index -4 is out of range and returns nil, which prints as empty line, no error.
  3. Final Answer:

    Negative index -4 is out of range and returns nil, no error -> Option A
  4. Quick Check:

    Out of range negative index returns nil [OK]
Hint: Out of range negative index returns nil, no error [OK]
Common Mistakes:
  • Assuming out of range index causes error
  • Thinking first() needs arguments
  • Confusing nil with error
5. Given the array arr = ["a", "b", "c", "d", "e"], which Ruby expression returns a new array with only the first and last elements?
hard
A. [arr.first, arr.last]
B. arr[0, 1] + arr[-1]
C. arr[0] + arr[-1]
D. arr.first + arr.last

Solution

  1. Step 1: Understand the goal

    We want a new array containing only the first and last elements.
  2. Step 2: Evaluate each option

    [arr.first, arr.last] creates an array with arr.first and arr.last. arr[0, 1] + arr[-1] tries to add an array and a string (wrong). arr[0] + arr[-1] adds two strings, resulting in concatenation, not array. arr.first + arr.last adds two strings, also concatenation.
  3. Final Answer:

    [arr.first, arr.last] -> Option A
  4. Quick Check:

    Array with first and last elements = [arr.first, arr.last] [OK]
Hint: Use array brackets to combine first and last elements [OK]
Common Mistakes:
  • Adding strings instead of creating an array
  • Using + with array and string causing error
  • Forgetting to wrap elements in array brackets
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard