Hi.
Is there a short way of creating array of numbers
with, for example, step of 10, like this:
10,20,30,40,50
By short I mean without going through iteration loop:
array=[]
(1..5).each do |i|
array.push i*10
end
Thanks
Haris
Hi.
Is there a short way of creating array of numbers
with, for example, step of 10, like this:
10,20,30,40,50
By short I mean without going through iteration loop:
array=[]
(1..5).each do |i|
array.push i*10
end
Thanks
Haris
Hello
By short I mean without going through iteration loop:
array=
(1..5).each do |i|
array.push i*10
end
Would you be pleased with something like this ?
array = (1..5).collect {|i| i*10}
=> [10, 20, 30, 40, 50]
Cheers,
--
JJ Fleck
PCSI1 Lycée Kléber
Haris Bogdanovi� wrote:
Hi.
Is there a short way of creating array of numbers
with, for example, step of 10, like this:10,20,30,40,50
By short I mean without going through iteration loop:
array=
(1..5).each do |i|
array.push i*10
endThanks
Haris
Take a look at Array.new[1]:
irb(main):001:0> Array.new(5){|i| i * 10}
=> [0, 10, 20, 30, 40]
With a little bit of math you should be able to get your desired result.
Marvin
[1]: http://www.ruby-doc.org/ruby-1.9/classes/Array.html#M000684
--
Posted via http://www.ruby-forum.com/\.
(1..5).map do |i|
i*10
end
This still has an explicit loop (or at least as explicit a loop as yours does), but is somewhat more concise.
On 1.8.7+ you can also do 10.step(50,10).to_a.
HTH,
Sebastian
On 28.12.2009 12:25, Haris Bogdanoviæ wrote:
Is there a short way of creating array of numbers
with, for example, step of 10, like this:10,20,30,40,50
By short I mean without going through iteration loop:
array=
(1..5).each do|i|
array.push i*10
end
Hi --
Hi.
Is there a short way of creating array of numbers
with, for example, step of 10, like this:10,20,30,40,50
By short I mean without going through iteration loop:
array=
(1..5).each do |i|
array.push i*10
end
In 1.8.6 you can do:
array = (1..5).map {|i| i * 10 }
and in 1.9 you can do:
10.step(50,10).to_a
I can never keep track of which side of the fence 1.8.7 falls on, but
you can try both.
David
On Mon, 28 Dec 2009, Haris Bogdanovi? wrote:
--
David A. Black
Senior Developer, Cyrus Innovation Inc.
THE COMPLEAT RUBYIST, Ruby training with Black/Brown/McAnally!
January 22-23, Tampa, Florida
Info and registration at http://www.thecompleatrubyist.com
=> [0, 10, 20, 30, 40]
On Mon, Dec 28, 2009 at 12:25 PM, Haris Bogdanović <fbogdanovi@xnet.hr> wrote:
Is there a short way of creating array of numbers
with, for example, step of 10, like this:
tens = Array.new(5) { |i| i*10 }
Haris Bogdanovi� wrote:
Hi.
Is there a short way of creating array of numbers
with, for example, step of 10, like this:10,20,30,40,50
(10..50).step(10).to_a
--
Posted via http://www.ruby-forum.com/\.
Hi --
Hi.
Is there a short way of creating array of numbers
with, for example, step of 10, like this:10,20,30,40,50
By short I mean without going through iteration loop:
array=
(1..5).each do |i|
array.push i*10
endIn 1.8.6 you can do:
array = (1..5).map {|i| i * 10 }
and in 1.9 you can do:
10.step(50,10).to_a
In fact, the #to_a might be completely superfluous depending on that
the OP wants to do with this.
I can never keep track of which side of the fence 1.8.7 falls on, but
you can try both.
Kind regards
robert
2009/12/28 David A. Black <dblack@rubypal.com>:
On Mon, 28 Dec 2009, Haris Bogdanovi? wrote:
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
David A. Black wrote:
Hi --
> Hi.
>
> Is there a short way of creating array of numbers
> with, for example, step of 10, like this:
>
> 10,20,30,40,50
>
> By short I mean without going through iteration loop:
>
> array=
> (1..5).each do |i|
> array.push i*10
> endIn 1.8.6 you can do:
array = (1..5).map {|i| i * 10 }
and in 1.9 you can do:
10.step(50,10).to_a
I can never keep track of which side of the fence 1.8.7 falls on, but
you can try both.David
irb(main):001:0> 10.step(50,10).to_a
=> [10, 20, 30, 40, 50]
irb(main):002:0> RUBY_VERSION
=> "1.8.7"
On Mon, 28 Dec 2009, Haris Bogdanovi? wrote:
--