Решил написать while в while
По моей логике должно было происходить следующее:
Есть внутренний цикл while x > 0.99
{x = 5.46 - 1 z = z + 1
x = 4.46 - 1 z = z + 1
...
x = 0.46}
выходим из цикла и умножаем x на 10 x=4.6
Внешний цикл проверяет чтобы x > 0
теперь
{x = 4.6 - 1 z = z + 1
x = 3.6 - 1 z = z +1
...
x = 0.6}
умножаем на 10
{x = 6 - 1
5 - 1
...
x = 0}
return z
Программа почему-то выдает 5....
package com.javarush.task.task01.task0132;
/*
Сумма цифр трехзначного числа
*/
public class Solution {
public static void main(String[] args) {
System.out.println(sumDigitsInNumber(546));
}
public static int sumDigitsInNumber(int number) {
double x = number / 100;
int z = 0;
while (x>0) {
while (x > 0.99) {
x = x - 1;
z = z + 1;
}
x = x*10;
}
return z;
}
}