Условный оператор в теле цикла с условием
Дано натуральное число. Определить, сколько раз в нем встречается максимальная цифра (например, для числа 132 233 ответ равен 3, для числа 46 336 — 2, для числа 12 345 — 1). Иногда выдает правильный ответ, иногда нет. Например: 123 - 3 повторяется один раз, 15566 - 2 раза, а у числа 13759217 - 2 раза(хотя 9 одна).
public static void main(String[] args) {
Scanner read = new Scanner(System.in);
int n, p, count = 0, maxdigit = 0;
System.out.print("n: ");
n = read.nextInt();
while (n != 0) {
p = n % 10;
if (p > maxdigit) maxdigit = p; // нахожу макс. цифру
if (p == maxdigit) count++; // считаю кол-во макс. цифр
n /= 10;
}
System.out.println(count);
}
}