Bird
Raised Fist0
Rubyprogramming~10 mins

Until loop 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 run the loop until the counter reaches 5.

Ruby
counter = 0
until counter [1] 5
  puts counter
  counter += 1
end
Drag options to blanks, or click blank then click option'
A==
B<
C>=
D!=
Attempts:
3 left
💡 Hint
Common Mistakes
Using < makes the loop not run at all.
Using == stops the loop too early or infinite.
2fill in blank
medium

Complete the code to print numbers from 1 to 3 using an until loop.

Ruby
num = 1
until num [1] 3
  puts num
  num += 1
end
Drag options to blanks, or click blank then click option'
A<=
B==
C<
D>
Attempts:
3 left
💡 Hint
Common Mistakes
Using < or <= makes the loop not run.
Using == causes an infinite loop.
3fill in blank
hard

Fix the error in the until loop condition to avoid an infinite loop.

Ruby
count = 10
until count [1] 1
  puts count
  count -= 1
end
Drag options to blanks, or click blank then click option'
A<
B>
C==
D<=
Attempts:
3 left
💡 Hint
Common Mistakes
Using > causes the loop not to run.
Using == may cause infinite loop or skip values.
4fill in blank
hard

Fill both blanks to create a loop that counts down from 3 to 1.

Ruby
i = 3
until i [1] 1
  puts i
  i [2] 1
end
Drag options to blanks, or click blank then click option'
A>
B<
C-=
D+=
Attempts:
3 left
💡 Hint
Common Mistakes
Using > in the condition causes the loop not to run.
Using += increases the counter, causing an infinite loop.
5fill in blank
hard

Fill all three blanks to create a loop that prints even numbers from 2 to 6.

Ruby
num = 2
until num [1] 7
  if num [2] 2 == 0
    puts num
  end
  num [3] 2
end
Drag options to blanks, or click blank then click option'
A<
B%
C+=
D>
Attempts:
3 left
💡 Hint
Common Mistakes
Using < in the loop condition stops the loop immediately.
Using -= decreases num causing infinite loop or wrong numbers.

Practice

(1/5)
1. What does an until loop do in Ruby?
easy
A. Repeats code while the condition is false
B. Repeats code while the condition is true
C. Runs code only once
D. Stops code immediately

Solution

  1. Step 1: Understand the until loop condition

    An until loop runs as long as its condition is false.
  2. Step 2: Compare with while loop

    Unlike while which runs when true, until runs when false.
  3. Final Answer:

    Repeats code while the condition is false -> Option A
  4. Quick Check:

    Until loop runs while condition is false [OK]
Hint: Until loops run while condition is false, opposite of while [OK]
Common Mistakes:
  • Thinking until runs while condition is true
  • Confusing until with while loop
  • Assuming until runs only once
2. Which of the following is the correct syntax for an until loop in Ruby?
easy
A. until condition then # code end
B. until (condition) { # code }
C. until condition: # code
D. until condition do # code end

Solution

  1. Step 1: Recall Ruby loop syntax

    Ruby uses until condition do ... end or just until condition ... end.
  2. Step 2: Check each option

    until condition do # code end matches Ruby syntax; others use wrong symbols or keywords.
  3. Final Answer:

    until condition do\n # code\nend -> Option D
  4. Quick Check:

    Ruby until loop uses do/end syntax [OK]
Hint: Use do/end blocks for until loops in Ruby [OK]
Common Mistakes:
  • Using curly braces {} instead of do/end
  • Using colon : like Python
  • Adding 'then' keyword incorrectly
3. What will be the output of this Ruby code?
count = 1
until count > 3 do
  puts count
  count += 1
end
medium
A. 1 2 3 4
B. 1 2 3
C. 2 3 4
D. No output

Solution

  1. Step 1: Analyze the loop condition and variable

    The loop runs until count > 3. Starting from 1, it prints and increments count.
  2. Step 2: Trace each iteration

    Prints 1, increments to 2; prints 2, increments to 3; prints 3, increments to 4; now count > 3, loop stops.
  3. Final Answer:

    1 2 3 -> Option B
  4. Quick Check:

    Prints 1 to 3 before stopping [OK]
Hint: Until runs while condition false, stops when count > 3 [OK]
Common Mistakes:
  • Including 4 in output by mistake
  • Thinking loop runs while condition true
  • Forgetting to increment count
4. Identify the error in this Ruby code using an until loop:
i = 0
until i < 5
  puts i
  i += 1
end
medium
A. Infinite loop because i never changes
B. Missing do keyword after until condition
C. The loop condition should be > instead of <
D. No error, code runs correctly

Solution

  1. Step 1: Analyze the loop condition

    until i < 5 with i=0: 0 < 5 is true, so condition true and loop never executes.
  2. Step 2: Identify the correct error

    Syntax is fine (newline ok without do). Logic error: condition backwards. Should be until i > 4 or similar. The loop condition should be > instead of < identifies this.
  3. Final Answer:

    The loop condition should be > instead of < -> Option C
  4. Quick Check:

    Wrong condition direction: loop never runs [OK]
Hint: Flip < to > for until when adapting while logic [OK]
Common Mistakes:
  • Confusing condition direction (< vs >)
  • Assuming no do needed for until
  • Thinking i doesn't change causing infinite loop
5. You want to write an until loop that prints numbers from 10 down to 1. Which code correctly does this?
hard
A. num = 10 until num < 1 do puts num num -= 1 end
B. num = 10 until num == 1 do puts num num -= 1 end
C. num = 10 until num > 0 do puts num num -= 1 end
D. num = 10 until num < 0 do puts num num -= 1 end

Solution

  1. Step 1: Understand the goal and loop condition

    We want to print from 10 down to 1, so loop should run while num is >= 1.
  2. Step 2: Check each option's condition

    num = 10 until num < 1 do puts num num -= 1 end uses until num < 1, meaning loop runs while num >= 1, printing 10 to 1 correctly.
  3. Final Answer:

    num = 10\nuntil num < 1 do\n puts num\n num -= 1\nend -> Option A
  4. Quick Check:

    Until runs while condition false, so until num < 1 runs until num is 0 [OK]
Hint: Use until num < 1 to count down from 10 to 1 [OK]
Common Mistakes:
  • Using until num < 0 (prints 0 too)
  • Using until num > 0 (never runs)
  • Stopping at num == 1 (doesn't print 1)
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