Информатика, опубликовано 2018-08-22 23:47:28 by Гость
Заполните массив случайными числами в интервале [100..999] и переставьте их по возрастанию суммы цифр.
Ответ оставил Гость
Const dlin = 100;
var b:array[1..dlin,1..2] of integer;
i,j,x:integer;
begin
writeln(Исходный массив:);
for i:=1 to dlin do
begin
b[i,1]:=random(800)+100;
write(b[i,1], );
b[i,2]:=b[i,1] mod 10 + b[i,1] div 100 + b[i,1] div 10 mod 10;
end;
writeln;
for i:=1 to dlin-1 do
for j:=dlin-1 downto i do
if b[j,2]>b[j+1,2] then
begin
x:=b[j,2]; b[j,2]:=b[j+1,2]; b[j+1,2]:=x;
x:=b[j,1]; b[j,1]:=b[j+1,1]; b[j+1,1]:=x;
end;
writeln(Отсортированный массив:);
for i:=1 to dlin do
write(b[i,1], );
end.
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.
