初歩的な質問なんですが、以下のようなことがしたいです

ar = ["a", "b", "c"]
ar.each {|x| print x, "は配列arの添え字", XXXX, "の要素 " }

#=> aは配列arの添え字0の要素 bは配列arの添え字1の要素 ...

ブロック内で今処理されている配列の添え字を知りたいのですが、
良い方法はないでしょうか。for i in 0...ar.size を使えば目的は達成
できるのですが、あんまりきれいじゃないと思ったので。