@Kostya12

Повторяется ли цифра в восьмизначном числе 3 раза?

Нужно чтобы программа проверяла повторяется ли цифра в числе 3 раза. И желательно без использования массивов, а только цикли если это возможно. На Си. Кто-нибудь знает как это сделать?
  • Вопрос задан
  • 232 просмотра
Решения вопроса 1
0xD34F
@0xD34F
int number = // ну, чему-то там равно, сами подставите

for (int digit = 0; digit < 10; digit++) {
    int repeat = 0,
        n = number,
        p = 10;

    do {
        int mod = n % p;
        if (mod * 10 / p == digit) {
            repeat++;
        }

        n -= mod;
        p *= 10;
    } while (n);

    // что делать с результатом - тоже разбирайтесь сами
    printf("%d is repeated %d time(s)\n", digit, repeat);
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@res2001
Developer, ex-admin
Переводите число в строковое представление и ищите повторяющиеся цифры, как найдете 3 повторения рапортуйте, что найдено.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы