Bird
0
0

You want to write a Ruby case/when statement that prints "Weekend" for Saturday and Sunday, "Weekday" for Monday to Friday, and "Invalid" for any other input. Which code correctly does this?

hard📝 Application Q15 of 15
Ruby - Control Flow

You want to write a Ruby case/when statement that prints "Weekend" for Saturday and Sunday, "Weekday" for Monday to Friday, and "Invalid" for any other input. Which code correctly does this?

Acase day when 'Saturday', 'Sunday' puts "Weekend" when 'Monday'..'Friday' puts "Weekday" else puts "Invalid" end
Bcase day when 'Saturday', 'Sunday' puts "Weekend" when 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday' puts "Weekday" else puts "Invalid" end
Ccase day when 'Saturday'..'Sunday' puts "Weekend" when 'Monday'..'Friday' puts "Weekday" else puts "Invalid" end
Dcase day when ['Saturday', 'Sunday'] puts "Weekend" when ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'] puts "Weekday" else puts "Invalid" end
Step-by-Step Solution
Solution:
  1. Step 1: Understand how to list multiple values in when

    Use commas to separate multiple values in one when line, like when 'Saturday', 'Sunday'.
  2. Step 2: Check each option

    case day when 'Saturday', 'Sunday' puts "Weekend" when 'Monday'..'Friday' puts "Weekday" else puts "Invalid" end incorrectly uses a range of strings 'Monday'..'Friday' which does not work as expected for days. case day when ['Saturday', 'Sunday'] puts "Weekend" when ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'] puts "Weekday" else puts "Invalid" end uses arrays in when, which does not match values correctly. case day when 'Saturday'..'Sunday' puts "Weekend" when 'Monday'..'Friday' puts "Weekday" else puts "Invalid" end uses string ranges like 'Saturday'..'Sunday' which is not meaningful for days. case day when 'Saturday', 'Sunday' puts "Weekend" when 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday' puts "Weekday" else puts "Invalid" end correctly lists each weekday separately with commas.
  3. Final Answer:

    case day when 'Saturday', 'Sunday' puts "Weekend" when 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday' puts "Weekday" else puts "Invalid" end -> Option B
  4. Quick Check:

    Use commas for multiple values in when [OK]
Quick Trick: Use commas, not ranges or arrays, for multiple when values [OK]
Common Mistakes:
MISTAKES
  • Using ranges of strings for days
  • Using arrays inside when clauses
  • Trying to use string ranges that don't work

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Ruby Quizzes