Bird
Raised Fist0
Rubyprogramming~20 mins

Boolean values (true, false, nil) in Ruby - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Boolean Mastery in Ruby
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
What is the output of this Ruby code?
Consider the following Ruby code snippet. What will it print when run?
Ruby
value = nil
if value
  puts "true branch"
else
  puts "false branch"
end
Atrue branch
BSyntaxError
Cfalse branch
Dnil
Attempts:
2 left
💡 Hint
Remember that in Ruby, only false and nil are treated as false in conditionals.
❓ Predict Output
intermediate
2:00remaining
What does this expression return?
What is the value of the variable result after running this Ruby code?
Ruby
result = (false || nil) && true
Anil
Bfalse
Ctrue
DSyntaxError
Attempts:
2 left
💡 Hint
Recall how Ruby evaluates && and || with false and nil.
🔧 Debug
advanced
2:00remaining
Why does this code raise an error?
This Ruby code raises an error. What is the cause?
Ruby
def check_value(val)
  if val == true || val == false || val == nil
    puts "Valid boolean or nil"
  else
    puts "Invalid value"
  end
end

check_value(nil)
ANoMethodError because nil has no == method
BSyntaxError due to incorrect use of || operator
CTypeError because nil cannot be compared with ==
DNo error; code runs and prints "Valid boolean or nil"
Attempts:
2 left
💡 Hint
Check how Ruby compares values with == and how nil behaves.
❓ Predict Output
advanced
2:00remaining
What is the output of this Ruby code involving nil and boolean?
What does this Ruby code print?
Ruby
value = false
puts value || "default"
Adefault
Bnil
Cfalse
Dtrue
Attempts:
2 left
💡 Hint
Remember how || returns the first truthy value.
🧠 Conceptual
expert
2:00remaining
Which Ruby value is treated as false in conditionals?
In Ruby, which of the following values are treated as false in conditional expressions?
AOnly false
BBoth false and nil
Cfalse, nil, and 0
DOnly nil
Attempts:
2 left
💡 Hint
Think about what Ruby considers falsey.

Practice

(1/5)
1. In Ruby, which of the following represents a value that means "nothing" or "no value"?
easy
A. nil
B. true
C. false
D. 0

Solution

  1. Step 1: Understand the meaning of nil

    In Ruby, nil is used to represent the absence of any value, like an empty box.
  2. Step 2: Compare with other options

    true and false are Boolean values meaning yes or no, but not "no value". 0 is a number, not a special value for nothing.
  3. Final Answer:

    nil -> Option A
  4. Quick Check:

    nil means no value [OK]
Hint: Remember: nil means no value or empty box [OK]
Common Mistakes:
  • Confusing false with nil
  • Thinking 0 means no value
  • Mixing true and nil meanings
2. Which of the following is the correct way to write a Boolean false value in Ruby?
easy
A. False
B. FalseValue
C. FALSE
D. false

Solution

  1. Step 1: Recall Ruby syntax for Boolean values

    Ruby uses lowercase true and false for Boolean values.
  2. Step 2: Check each option

    False and FALSE are not valid Ruby keywords. FalseValue is not a keyword but a name.
  3. Final Answer:

    false -> Option D
  4. Quick Check:

    Boolean false is lowercase false [OK]
Hint: Boolean keywords are lowercase in Ruby [OK]
Common Mistakes:
  • Using capitalized False or TRUE
  • Adding extra words to Boolean values
  • Confusing symbols with keywords
3. What will the following Ruby code print?
value = nil
if value
  puts "Yes"
else
  puts "No"
end
medium
A. nil
B. Yes
C. No
D. Error

Solution

  1. Step 1: Understand how Ruby treats nil in conditions

    In Ruby, nil is treated as false in conditions.
  2. Step 2: Follow the if-else logic

    Since value is nil, the if value condition is false, so the else branch runs, printing "No".
  3. Final Answer:

    No -> Option C
  4. Quick Check:

    nil acts as false in if [OK]
Hint: nil and false both act as false in conditions [OK]
Common Mistakes:
  • Thinking nil is true
  • Expecting nil to print itself
  • Confusing nil with empty string
4. Find the error in this Ruby code snippet:
if false
  puts "No"
elsif nil
  puts "Maybe"
else
  puts "Yes"
end
medium
A. The condition elsif nil never runs
B. No error, prints "Yes"
C. The code prints "Maybe" incorrectly
D. Syntax error: missing end

Solution

  1. Step 1: Check syntax correctness

    The code has matching if, elsif, and end, so no syntax error.
  2. Step 2: Evaluate conditions in order

    false is false, nil is also false, so both conditions fail and else runs, printing "Yes".
  3. Final Answer:

    No error, prints "Yes" -> Option B
  4. Quick Check:

    False and nil skip to else [OK]
Hint: False and nil conditions skip to else branch [OK]
Common Mistakes:
  • Thinking elsif nil runs
  • Expecting syntax error
  • Confusing elsif with else
5. You want to check if a variable status is either true or nil in Ruby. Which condition correctly does this?
hard
A. if status == true || status == nil
B. if status == true && status == nil
C. if status || nil
D. if status != false

Solution

  1. Step 1: Understand the condition requirements

    You want to check if status is either true OR nil, so use logical OR (||).
  2. Step 2: Analyze each option

    if status == true || status == nil uses status == true || status == nil, which matches the requirement. if status == true && status == nil uses AND, which can never be true for both at once. if status || nil is incorrect syntax and logic. if status != false checks if status is not false, which includes other values too.
  3. Final Answer:

    if status == true || status == nil -> Option A
  4. Quick Check:

    Use OR (||) to check either condition [OK]
Hint: Use || to check if either condition is true [OK]
Common Mistakes:
  • Using && instead of ||
  • Confusing != false with true or nil
  • Writing invalid condition syntax
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