VU
int divider = 1;
while( divider < n ) {
sum += n / divider;
divider *= 2;
}
Size: a a a
VU
int divider = 1;
while( divider < n ) {
sum += n / divider;
divider *= 2;
}
Н

УГ
Н
УГ
УГ
Н
VU
Н
VU
УГ
УГ
Н
Н
VU
number > 0 будет всегда true тут, поскольку number у тебя не меняется: в момент выполнения number / i у тебя создаётся новая локальная переменная, куда сохраняется временное значение, поэтому проверку можно убратьН
УГ
Н
Н

УГ