在范围,平方和立方体中插入所选数字

问题描述 投票:-2回答:1

我正在尝试为允许的用户输入的数字设置范围。然后,我想打印所选数字的平方和立方。

我尝试了以下方法:

class Range
  def clamp(min, max)
    self < min ? min : self > max ? max : self
  end
end

class Multiply
  def initialize(id, squared, cubed)
    @id     = num
    @squared   = (num * num)
    @cubed = (num * num * num)
  end
end

# @limit = (params[:limit] || 10).clamp(0, 100)

puts 'Please insert your favorite number between 1 and 100.'
num = gets.to_i
puts 'You picked ' + num.to_s + '?'
puts 'You picked ' + num.to_s.Multiply.squared + '?'

@limit投掷'params' not found

如何在num之前通过类RangeMultiply运行puts

ruby integer
1个回答
1
投票

我正在尝试为“允许的”用户输入的数字设置一个范围,然后我想打印所选择的数字平方和立方体。

通过clamp模块使用Numeric提供的Comparable方法:

input = '110'
clamped = input.to_i.clamp(0,100)

puts clamped
#100

你可以用Integer#**Float#**获得数字的力量。如果必须通过扩展核心类来生成DIY方法,那么你可以通过在那里定义方法Numericclampsquare来扩展cube类。 square可能是:

class Numeric
  def square
    self ** 2
  end
end

10.square #=> 100
© www.soinside.com 2019 - 2024. All rights reserved.