Вывести в возрастающем порядке все трехзначные числа, в десятичной записи которых нет одинаковых цифр (операции деления не использовать) - C (СИ)

Узнай цену своей работы

Формулировка задачи:

...

Решение задачи: «Вывести в возрастающем порядке все трехзначные числа, в десятичной записи которых нет одинаковых цифр (операции деления не использовать)»

textual
Листинг программы
#include <stdio.h>
 
int main (void)
{
    int i, j, k;
    
    for (i=1; i < 10; i++)
        for (j=0; j < 10; j++)
            {
                if (i == j) continue;
                for (k=0; k < 10; k++)
                    {
                       if (i == k || k == j) continue;
                       printf("%d\n", i*100+j*10+k);
                     }
            }
 
    return 0;
}

Объяснение кода листинга программы

В этом коде выполняется две вложенные циклы. Первый цикл идет от 1 до 9, а второй от 0 до 9. Если первое значение равно второму, то второе значение пропускается (continue), чтобы не выводить числа, в которых первая и вторая цифры одинаковы. Третий цикл идет от 0 до 9 и проверяет каждую цифру из трех возможных для вывода. Если какая-либо цифра совпадает с первой или второй цифрой числа, то она пропускается (continue). Если все цифры уникальны, то число выводится на экран (printf). Список действий:

  1. Создаются три переменные: i, j, k.
  2. Первый цикл идет от 1 до 9.
  3. Второй цикл идет от 0 до 9.
  4. Если первое значение равно второму, то второе значение пропускается (continue).
  5. Третий цикл идет от 0 до 9.
  6. Если какая-либо цифра совпадает с первой или второй цифрой числа, то она пропускается (continue).
  7. Если все цифры уникальны, то число выводится на экран (printf).
  8. Код повторяется для всех значений первого цикла.
  9. Код завершается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.8 из 5
Похожие ответы