数字のn番目のルートを計算するコードがあります。現在、このメソッドはFixnumクラスでのみ定義されているため、Fixnumでのみ機能します。複数のクラスに同じメソッドを追加
class Float
#same code as was in Fixnum
end
しかし、これは不必要なようです。動的にクラスを呼び出す方法はわかりません。私は試みた:
classes = [Fixnum, Float]
classes.each do |x|
x.instance_eval do
def root(pow)
return self ** (1/pow.to_f)
end
end
end
しかし、それは動作しませんでした。これはどうすればいいですか? 注::転記後、私はこれがProgrammers.SEの方が理にかなっていると認識しました。 ...それに応じて移行してお気軽
注意を上記の 'return'では必要ではない(そして非慣用的)。 – Phrogz