I understand it as reading 'while the value of 'i’s remainder when doing i/2 is equal to 0; then continue
is that correct, and more importantly for me… how is i%2 == 0 ever correct except division by zero? then how can the condition be met where this for condition allows the sequential printing of odd only nums?
Imagine you were back in math class and you had to simplify an improper fraction into a mixed number. That is you had to turn a fraction like 7/3 into 2 1/3.
The remainder operation basically gives you the numerator to the fraction part of the the answer. Eg in integer math we have:
7/3 = 2
7%3= 1 (the 1 in 1/3 above)
This is always true for odd numbers with X%2 because there will always be a 1/2 fraction when you simplify any odd number over 2. Eg 5/2 = 2 1/2. 7/2 = 3 1/2.
I’m not 100% sure what you are doing with the continue in your code. Those are typically used to skip an iteration of a loop, but without more context (more code) I can’t say if you are using it correctly or not.
Thanks Jon…
I get the math mechanics, what eluded me was the evaluation ==0.
the continue drops to a simple
fmt.Println(i)
with a conditional check to stop the loop with a 'break’
so to sum up; i%2 == 0 would always be true for even nums, and only even nums; while false for odds…
is that the correct view?
Jon (jbarkls)