Bird
Raised Fist0
Rubyprogramming~5 mins

Block parameters in Ruby - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What are block parameters in Ruby?
Block parameters are variables that a block receives when it is called. They allow the block to accept input values and use them inside the block.
Click to reveal answer
beginner
How do you define block parameters in Ruby?
Block parameters are defined between vertical bars | | right after the block keyword or do. For example: array.each { |item| puts item } where item is the block parameter.
Click to reveal answer
beginner
What happens if you don't specify block parameters in a Ruby block?
If you don't specify block parameters, the block will not receive any input values from the method calling it. You won't be able to access the values passed to the block.
Click to reveal answer
intermediate
Can a Ruby block have multiple parameters? How?
Yes, a Ruby block can have multiple parameters separated by commas inside the vertical bars. For example: array.each_with_index { |item, index| puts "#{index}: #{item}" } where item and index are block parameters.
Click to reveal answer
intermediate
What is the difference between block parameters and method parameters in Ruby?
Block parameters are variables passed to a block, which is a chunk of code passed to a method. Method parameters are variables passed to the method itself. Blocks are called inside methods and can receive their own parameters separately.
Click to reveal answer
How do you write block parameters in Ruby?
AInside square brackets [ ] after the block keyword
BInside parentheses ( ) after the method name
CInside curly braces { } after the method name
DInside vertical bars | | after the block keyword
What will this code print?
[1, 2, 3].each { |n| puts n * 2 }
A2 4 6
B1 2 3
Cnil
DError
What happens if you omit block parameters but the block expects them?
AThe block will ignore the passed values
BThe block will receive default values
CThe block will raise an error
DThe block will run normally without parameters
Which of these is a valid block parameter list?
A{item, index}
B|item, index|
C(item, index)
D[item, index]
Can a block parameter be named the same as a method parameter?
AOnly if the method is private
BNo, it causes a syntax error
CYes, they are in different scopes
DOnly if the block is empty
Explain what block parameters are and how you use them in Ruby.
Think about how a block receives values from a method like each.
You got /3 concepts.
    Describe the difference between method parameters and block parameters in Ruby.
    Consider how methods and blocks receive their inputs separately.
    You got /4 concepts.

      Practice

      (1/5)
      1.

      What are block parameters in Ruby?

      Choose the best description.

      easy
      A. Variables inside | | that receive values passed to the block.
      B. Methods that define how a block works.
      C. Special keywords to start a block.
      D. Constants used only outside blocks.

      Solution

      1. Step 1: Understand block parameters role

        Block parameters are variables placed inside | | after do or { to receive values passed into the block.
      2. Step 2: Compare options with definition

        Only Variables inside | | that receive values passed to the block. correctly describes block parameters as variables inside | | that get values passed to the block.
      3. Final Answer:

        Variables inside | | that receive values passed to the block. -> Option A
      4. Quick Check:

        Block parameters = variables inside | | [OK]
      Hint: Block parameters are always inside | | after do or { [OK]
      Common Mistakes:
      • Confusing block parameters with methods
      • Thinking block parameters are keywords
      • Assuming block parameters are constants
      2.

      Which of the following is the correct syntax for block parameters in Ruby?

      array.each do ?
      easy
      A. [item] puts item
      B. (item) puts item
      C. |item| puts item
      D. {item} puts item

      Solution

      1. Step 1: Recall block parameter syntax

        Block parameters are placed inside vertical bars | | after do or {.
      2. Step 2: Match syntax with options

        Only |item| puts item uses |item| which is the correct syntax for block parameters.
      3. Final Answer:

        |item| puts item -> Option C
      4. Quick Check:

        Block parameters use | | [OK]
      Hint: Block parameters always go inside | | after do or { [OK]
      Common Mistakes:
      • Using parentheses () instead of | |
      • Using curly braces {} for parameters
      • Using square brackets [] for parameters
      3.

      What is the output of this Ruby code?

      numbers = [1, 2, 3]
      numbers.each do |n|
        puts n * 2
      end
      medium
      A. 2 4 6
      B. 1 2 3
      C. Error: undefined variable n
      D. nil

      Solution

      1. Step 1: Understand the block parameter usage

        The block parameter n takes each element from the array numbers one by one.
      2. Step 2: Calculate output for each element

        For each n, the code prints n * 2. So outputs are 2, 4, and 6 on separate lines.
      3. Final Answer:

        2 4 6 -> Option A
      4. Quick Check:

        Each number doubled = 2,4,6 [OK]
      Hint: Block parameter holds each item; multiply inside block [OK]
      Common Mistakes:
      • Confusing block parameter with array variable
      • Expecting original numbers printed
      • Thinking block parameter is undefined
      4.

      Find the error in this Ruby code:

      fruits = ['apple', 'banana']
      fruits.each do fruit|
        puts fruit
      end
      medium
      A. Block parameter should be in parentheses
      B. Missing closing | after block parameter
      C. No error, code runs fine
      D. Missing opening | before block parameter

      Solution

      1. Step 1: Check block parameter syntax

        Block parameters must be enclosed inside vertical bars | |. Here, only the closing bar is present.
      2. Step 2: Identify missing part

        The opening | before fruit is missing, causing a syntax error.
      3. Final Answer:

        Missing opening | before block parameter -> Option D
      4. Quick Check:

        Block parameters need both | | [OK]
      Hint: Block parameters always need both | at start and end [OK]
      Common Mistakes:
      • Forgetting the opening |
      • Using parentheses instead of | |
      • Assuming code runs without |
      5.

      Given this code, what will be the output?

      pairs = [[1, 2], [3, 4], [5, 6]]
      pairs.each do |a, b|
        puts a + b
      end
      hard
      A. [1, 2] [3, 4] [5, 6]
      B. 3 7 11
      C. Error: wrong number of block parameters
      D. 1 3 5

      Solution

      1. Step 1: Understand multiple block parameters

        The block parameters a and b receive each inner array's two elements separately.
      2. Step 2: Calculate sum for each pair

        For each pair, the code prints the sum: 1+2=3, 3+4=7, 5+6=11.
      3. Final Answer:

        3 7 11 -> Option B
      4. Quick Check:

        Sum of pairs = 3,7,11 [OK]
      Hint: Use multiple block parameters to unpack arrays inside each [OK]
      Common Mistakes:
      • Expecting array printed instead of sum
      • Thinking block parameters can't unpack arrays
      • Assuming syntax error with two parameters
      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