Лучшие помощники
- Megamozg 2205 б
- Matalya1 1800 б
- DevAdmin 1720 б
- arkasha_bortnikov 900 б
- Dwayne_Johnson 870 б
14 января 2023 22:59
914
Задание заполните массив случайными числами в интервале [100..999] и переставьте их по возрастанию суммы цифр.
1
ответ
Var
a:array [1..10] of integer;
i,j,k:integer;
function Sum(c:integer):integer;
var s:integer;
begin
s:=c mod 10;
c:=c div 10;
s:=s + c mod 10;
s:=s + c div 10;
sum:=s;
end;
begin
randomize;
writeln('Массив:');
for i:=1 to 10 do
begin
a[i]:=random(900)+100;
write(a[i],' ');
end;
writeln;
writeln('Массив после перестановок:');
for i:=1 to 9 do
for j:=(i+1) to 10 do
if sum(a[i])>sum(a[j]) then
begin
k:=a[i];
a[i]:=a[j];
a[j]:=k;
end;
for i:=1 to 10 do
write(a[i],' ');
writeln;
end.
a:array [1..10] of integer;
i,j,k:integer;
function Sum(c:integer):integer;
var s:integer;
begin
s:=c mod 10;
c:=c div 10;
s:=s + c mod 10;
s:=s + c div 10;
sum:=s;
end;
begin
randomize;
writeln('Массив:');
for i:=1 to 10 do
begin
a[i]:=random(900)+100;
write(a[i],' ');
end;
writeln;
writeln('Массив после перестановок:');
for i:=1 to 9 do
for j:=(i+1) to 10 do
if sum(a[i])>sum(a[j]) then
begin
k:=a[i];
a[i]:=a[j];
a[j]:=k;
end;
for i:=1 to 10 do
write(a[i],' ');
writeln;
end.
0
·
Хороший ответ
16 января 2023 22:59
Остались вопросы?
Еще вопросы по категории Информатика
ABC PASCAL нарисовать квадрат в котором будет двигаться по диагонали круг...
Скорость передача данных через некоторое соединение равна 2 048 000 бит/с. Через данное время передают файла размером 1000 Кбайт. Определите время пер...
Для хранения текста в восьмибитовой кодировке требуется 10 Кбайт. Сколько страниц займет текст, если на странице размещается 40 строк по 64 символа в...
Определите, разновидностью системного или прикладного обеспечения является каждый из приведенных ниже видов программного. обеспечения.ВЕДЬ ТАК?)...
Каждый из десяти населенных пунктов соединен автодорогами с девятью другими(без проезда на промежуточные пункты). При этом автобусное сообщение сущест...