RubyでSaaSコースをやっています。演習では、イテレータ、ブロック、および歩留まりを使用して、2つのシーケンスのデカルト積を計算するように求められます。
私は純粋な推測とエラーによってこれに行き着きました、そしてそれはうまくいくようです。しかし、その方法はわかりません。基本ブロックと歩留まりの使い方は理解しているようですが、これは?全くない。
class CartProd
include Enumerable
def initialize(a,b)
@a = a
@b = b
end
def each
@a.each{|ae|
@b.each{|be|
yield [ae,be]
}
}
end
end
私のような初心者のための説明をお願いします。
(追記:必要なクラス名をCartProdに変更したので、コースを受講している人は、グーグルで簡単に回答を見つけることができません)