Exam Code: Ruby-Programmer-Gold
Exam Questions: 160
Ruby Association Certified Ruby Programmer Gold version 3
Updated: 22 May, 2026
Viewing Page : 1 - 16
Practicing : 1 - 5 of 160 Questions
Question 1

Review the following Ruby code snippet in the context of class inheritance and method access control:

class Product
  def initialize(name, price)
    @name = name
    @price = price
  end
  private
  def price
    @price
  end
end
class Electronic < Product
  def discount_amount(discount_percentage)
    price * discount_percentage / 100.0
  end
  def discounted_price(discount_percentage)
    price - discount_amount(discount_percentage)
  end
end
electronic_item = Electronic.new("Laptop", 1000)
result = electronic_item.discounted_price(20)
What will be the value of result?

Options :
Answer: B

Question 2

In Ruby, understanding non-local exits such as break, next, and return within the context of blocks and methods is crucial for controlling the flow of a program. Consider the following Ruby code snippet:

def test_method [1, 2, 3].each do |i| return i if i == 2 end "No match"end result = test_method Based on this code, which two of the following statements are true regarding non-local exits in Ruby?

Options :
Answer: A,E

Question 3

Examine the following Ruby code snippet that utilizes refinements:

module LengthConversion refine String do def to_meters self.to_f / 3.281 end endend class MeasurementConverter using LengthConversion  def convert_to_meters(length_in_feet) length_in_feet.to_meters endend converter = MeasurementConverter.newoutside_conversion = "10".to_meters result1 = converter.convert_to_meters("10")result2 = outside_conversion What will be the values of result1 and result2, respectively?

Options :
Answer: C

Question 4

Examine the following Ruby code snippet:

a = 2
b = 3
c = '4'
result1 = a * b
result2 = a * c
result3 = c * b
result4 = c + a

Options :
Answer: B

Question 5

Review the following Ruby code snippet:

def execute_operations(operations) operations.each do |operation| result = send(operation) break result if result == :error endend def operation1 :successend def operation2 :errorend def operation3 :successend result = execute_operations([:operation1, :operation2, :operation3]) What will be the value of result after executing this code?

Options :
Answer: B

Viewing Page : 1 - 16
Practicing : 1 - 5 of 160 Questions

© Copyrights FreePDFQuestions 2026. All Rights Reserved

We use cookies to ensure that we give you the best experience on our website (FreePDFQuestions). If you continue without changing your settings, we'll assume that you are happy to receive all cookies on the FreePDFQuestions.