Ruby - MethodsWhich of the following Ruby method definitions correctly assigns a default value to a parameter?Adef greet(name = ) "Hi, #{name}!" endBdef greet(name: "User") "Hi, #{name}!" endCdef greet(name) name = "User" "Hi, #{name}!" endDdef greet(name = "User") "Hi, #{name}!" endCheck Answer
Step-by-Step SolutionSolution:Step 1: Check Ruby default parameter syntaxDefault values are assigned using the equals sign in the parameter list, e.g., name = "User".Step 2: Analyze optionsdef greet(name = "User") "Hi, #{name}!" end uses correct syntax. def greet(name: "User") "Hi, #{name}!" end uses keyword argument syntax incorrectly. def greet(name) name = "User" "Hi, #{name}!" end assigns default inside method body, not parameter list. def greet(name = ) "Hi, #{name}!" end has invalid syntax.Final Answer:def greet(name = "User") -> Option DQuick Check:Default parameter uses equals sign in method signature [OK]Quick Trick: Default values use = in parameter list [OK]Common Mistakes:Confusing keyword arguments with default parametersAssigning default inside method body instead of parameter listLeaving default value empty after =
Master "Methods" in Ruby9 interactive learning modes - each teaches the same concept differentlyLearnWhyDeepVisualTryChallengeProjectRecallTime
More Ruby Quizzes Control Flow - Guard clauses pattern - Quiz 7medium Hashes - Why hashes are used everywhere in Ruby - Quiz 6medium Loops and Iteration - While loop - Quiz 10hard Methods - Bang methods (ending with !) - Quiz 13medium Operators and Expressions - Comparison operators - Quiz 6medium Operators and Expressions - Arithmetic operators - Quiz 2easy Ruby Basics and Runtime - IRB for interactive exploration - Quiz 13medium String Operations - Split and join methods - Quiz 12easy Variables and Data Types - Nil as the absence of value - Quiz 11easy Variables and Data Types - Integer and Float number types - Quiz 7medium