From: Lloyd Linklater Date: 2007-05-10T21:33:08+09:00 Subject: loop questions I am new to ruby and loving it so far and have beginner's questions about loops. I wanted something like this: for (int i = 1; i <= 5; i++) printf("%d\n", [i]); expecting: 1 2 3 4 5 I wrote this: i = 5 i.times do puts i.to_s end And got: 5 5 5 5 5 I am guessing that there is an internal variable that is incremented. doh! Is there a way to get the changing variable in there without having a separate variable in there? Anyway, I then tried this: for i in 1..5 puts i.to_s end Which worked as expected. But I had better use for a descending loop. In pascal it would be for i := 5 downto 1 do writeln('%d', [i]); but I could not figure out how to do that in a for loop. I looked through several books and could not find the answer. Any tips? -- Posted via http://www.ruby-forum.com/.