Множества. Вывести в возрастающем порядке все цифры, входящие в десятичную запись некоторого числа n - Pascal ABC

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

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

Вывести в возрастающем порядке все цифры,входящие в десятичную запись некоторого числа n.
Данное задание актуально

Решение задачи: «Множества. Вывести в возрастающем порядке все цифры, входящие в десятичную запись некоторого числа n»

textual
Листинг программы
var
  n: integer;
  m: set of byte;
  i: byte;
  
begin
  ReadLn(n); n := Abs(n);
  while n > 0 do
  begin
    Include(m, n mod 10);
    n := n div 10
  end;
  for i := 0 to 9 do
    if i in m then Write(i, ' ')
end.

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

В данном коде происходит следующее:

  1. Создаются переменные: n (целое число), m (множество байтов) и i (байт).
  2. Считывается значение переменной n с помощью функции ReadLn.
  3. Значение переменной n преобразуется в абсолютное значение с помощью оператора Abs.
  4. Запускается цикл while, который выполняется до тех пор, пока значение переменной n больше нуля.
  5. Внутри цикла значение переменной n преобразуется в десятичную форму с помощью оператора mod и затем включается в множество m с помощью оператора Include.
  6. Затем значение переменной n делится на 10 с помощью оператора div и результат присваивается переменной n.
  7. После завершения внутреннего цикла while происходит внешний цикл for, который проходит по всем цифрам от 0 до 9.
  8. Если цифра находится в множестве m (что проверяется с помощью условия if i in m), то она выводится на экран с помощью функции Write.
  9. Цикл for завершается после прохождения всех цифр от 0 до 9. Таким образом, данный код выводит на экран все цифры, входящие в десятичную запись некоторого числа n.

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

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