Напечатать в порядке убывания все цифры, входящие в запись данного натурального числа. - Pascal ABC
Формулировка задачи:
Напечатать в порядке убывания все цифры, входящие в запись данного натурального числа.
Решение задачи: «Напечатать в порядке убывания все цифры, входящие в запись данного натурального числа.»
textual
Листинг программы
var n:integer;
i:byte;
m:set of byte;
begin
writeln('Введите целое число n=');
readln(n);
writeln('Все цифры, входящие в число в порядке убывания');
if n=0 then write(n)//если 0
else
begin
n:=abs(n);//вдруг ввели отрицательное
m:=[];//пустое множество цифр
while n>0 do //пока n не ноль
begin
m:=m+[n mod 10]; //пишем в множество последнюю цифру
n:=n div 10; //сокращаем число в 10 раз
end;
for i:=9 downto 0 do //выводим элементы множества
if i in m then write(i,' ');//в строку через пробелы
end
end.