Всем привет!
Объясните, пожалуйста, как работает этот код?
Ставим IF если число делится на 3:
if ((number % 3) == 0); {
number ++;
continue;
Запустили код, переменна number стала 1, summ сложилась в сумму 1, и далее number увеличивается на +1, т.е. стала 2, сложилась в summ, summ стала 3.
Далее number увеличивается на +1, становится 3.
Срабатывает if, и насколько я понимаю, number становится равно 0, потому что if ((number % 3) == 0);. Далее в if перед continue стоит summ++, т.е. наш number должен с 0 стать 1, и весь цикл сбивается, разве нет? Объясните логику, пожалуйста.
package com.javarush.task.pro.task04.task0407;
/*
Сумма чисел, не кратных 3
*/
public class Solution {
public static void main(String[] args) {
int summ = 0;
int number = 0;
while (number <= 0) {
number ++;
if ((number % 3) == 0); {
number ++;
continue;
}
summ += number;
System.out.println(summ);
}
}
}