Я хочу получить мультипликативный цифровой корень записи со сканера. У меня есть некоторые проблемы при получении нового ввода, когда вы, например, вводите отрицательное или большее число, чем 1 миллион.
Как я могу снова получить данные и попытаться снова вычислить в этих случаях?
import java.util.Scanner;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("Calculate multiplicative digital root");
int x = sc.nextInt();
int mdc = 1; //multiplicative digital root = mdc
if (x >= 0 && x <= 1000000) {
while (x != 0) {
mdc = mdc * (x % 10);
x = x /10;
}
System.out.println(mdc);
}
else {
System.out.println("Wrong number range or negative");
}
}