В нэте есть я это тоже позавчера делал)
<em>MS DOS QBasic 1.0</em>
RANDOMIZE TIMER
CONST n = 9
DIM a(1 TO n) AS INTEGER
CLS
FOR i = 1 TO n
a(i) = INT(99 * RND)
PRINT a(i);
NEXT i
PRINT
FOR i = 1 TO n - 1
FOR j = i + 1 TO n
IF a(i) < a(j) THEN
t = a(i)
a(i) = a(j)
a(j) = t
END IF
NEXT j
NEXT i
FOR i = 1 TO n
PRINT a(i);
NEXT i
<u>Пример</u>
85 21 7 21 29 45 98 70 23
98 85 70 45 29 23 21 21 7
// PascalABC.Net
function IsNice(n:longint):boolean;
// Отвечает на вопрос, является ли число красивым
var
d,nd,sd:byte;
begin
sd:=0; nd:=0;
repeat
d:=n mod 10;
sd:=sd+d; Inc(nd);
n:=n div 10
until n=0;
IsNice:=(sd mod nd = 0)
end;
var
i,n,k:longint;
begin
Write('Порядковый номер "красивого" числа: '); Read(n);
i:=1; k:=0;
repeat
if IsNice(i) then Inc(k);
if k<>n then Inc(i)
until k=n;
Writeln('Красивое число равно ',i)
end.
<em><u>Тестовое решение:</u></em>
Порядковый номер "красивого" числа: 15
Красивое число равно 20
Например есть: сканер, видеокарта.