# Loops & Iterators - 9. Next

#1

For some reason this code isn't working and I really can't see what's wrong with it! I'm using modulus to see if a number is odd, then skip to the next iteration of the loop if it is. But I'm getting the following error message:

Oops, try again. It looks like your loop doesn't print out the numbers 18 to 0.

I know I need to add an exception for 1, because 1/3 won't equal 0. But it doesn't seem to be writing the correct numbers to the console. Here's what comes out:

19171614131110875421nil

Can anyone see what's wrong with this code? Thank you!

``````i = 20

loop do
i -= 1
next if i % 3 == 0
break if i <= 0
print i
end``````

#2

Whether a number is odd has to do with whether it's divisible by two, not three

Your error message also mentions 0, make sure you get the first and last number right

#3

I think my code does show what it should but it is still wrong, why?
Thank you !

#4

Following ionastan's advice, I managed to solve it. Try this:

``````i = 20

loop do
i -= 1
next if i % 2 == 1
break if i < 0
print i
end``````

#5

Silly me. Yes, fixed it now. Thank you!

#6

#7

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.