Предмет: Информатика,
автор: Teryra
Дано два массива a и b, каждый состоит из n элементов. Построить третий массив c при условии ci = ai + bi. Отсортировать его по возрастанию cортировкой методом подсчета.
Можно задать массив рандомно, а можно и в ручную, как вам будет удобней.
Ответы
Автор ответа:
1
PascalABC.NET 3.4.2, сборка 1843 от 24.10.2018
Внимание! Если программа не работает, обновите версию!
begin
var n := ReadInteger('Размер массива:');
var k := ReadInteger('Максимальное значение элемента:');
var a := ArrRandom(n, 0, k);
a.Println;
var b := ArrRandom(n, 0, k);
b.Println;
var c := a.Zip(b, (p, q)-> p + q).ToArray;
c.Println;
k := c.Max;
var v := ArrFill(k + 1, 0);
for var i := 0 to c.High do
v[c[i]] += 1;
var d := 0;
for var j := 0 to k do
for var i := 0 to v[j] - 1 do
begin
c[d] := j;
d += 1
end;
c.Println
end.
Размер массива: 15
Максимальное значение элемента: 40
31 11 31 28 10 30 16 38 24 25 11 38 0 29 35
31 36 6 35 15 2 13 34 10 6 37 14 32 31 10
62 47 37 63 25 32 29 72 34 31 48 52 32 60 45
25 29 31 32 32 34 37 45 47 48 52 60 62 63 72
https://znanija.com/task/30200147
https://znanija.com/task/30200177
Похожие вопросы
Предмет: Алгебра,
автор: Аноним
Предмет: Литература,
автор: ksjajdkajsjI
Предмет: Музыка,
автор: alicetimofeeva2020
Предмет: Физика,
автор: Ростов11111
Предмет: Экономика,
автор: Настенька5665
Решение вы дали верно, так что я отмечу ваше решение как лучшее. Но я буду благодарен, если вы напишите эту же программу на C++.