program raf105;
var abc,a,b,c:integer;
begin
write('Введите трёхзначное число: ');
readln(abc);
a:= abc div 100;
c:= abc mod 10;
b:= (abc-((a*100)-c)) div 10;
if (a>b) and (a>c)
then begin
a:= a*100;
if b>c
then b:=b*10
else c:=c*10;
end;
if (b>a) and (b>c)
then begin
b:= b*100;
if a>c
then a:=a*10
else c:=c*10;
end;
if (c>b) and (c>a)
then begin
c:= c*100;
if b>a
then b:=b*10
else a:=a*10;
end;
abc:= a+b+c;
writeln('Компьютер переставил цифры числа в порядке убывания: ',abc);
end.
Язык PascalABC
Поделитесь своими знаниями, ответьте на вопрос:
Написать в тетради виды компьютеров)
var
n, Num, i, j, t: integer;
Count: array[1..12] of integer;
Names: array[1..12] of integer;
begin
for i := 1 to 12 do
begin
Count[i] := 0;
Names[i] := i;
end;
ReadLn(N); { Считываем количество запросов}
for i := 1 to N do
begin
ReadLn(t); {считали очередной запрос}
Count[t] := Count[t] + 1;
end;
{Сортируем массивы Names и Count в порядке убывания значений массива Count}
for i := 12 downto 2 do
for j := 2 to i do
if Count[j - 1] < Count[j] then
begin
t := Count[j];
Count[j] := Count[j - 1];
Count[j - 1] := t;
t := Names[j];
Names[j] := Names[j - 1];
Names[j - 1] := t;
end;
for i := 12 downto 1 do
if Count[i] > 0 then
WriteLn(Names[i], ' ', Count[i]);
end.
Объяснение: