rng.step(n=1) {| obj | block } => rng
Itera sobre rng, pasando cada enésimo elemento al bloque. Si el rango contiene números o cadenas, se utiliza el orden natural. De lo contrario, el paso invoca succ para iterar a través de los elementos de rango. El siguiente código usa la clase X, que se define en la documentación a nivel de clase.
range = Xs.new(1)..Xs.new(10)
range.step(2) {|x| puts x}
range.step(3) {|x| puts x}
produce:
1 x
3 xxx
5 xxxxx
7 xxxxxxx
9 xxxxxxxxx
1 x
4 xxxx
7 xxxxxxx
10 xxxxxxxxxx
Referencia: http://ruby-doc.org/core/classes/Range.html
......