Дан вектор размером n, отсортировать первую половину вектора по убыванию

Ответы

Ответ дал: Аноним
0

PascalABC.NET 3.4.2, сборка 1881 от 19.11.2018

Внимание! Если программа не работает, обновите версию!

begin

 var V := ArrRandom(ReadInteger('n='), -50, 50);

 V.Println;

 var k := V.Length;

 k := (k.IsOdd ? (k + 1) : k) div 2;

 V := (V[:k].OrderByDescending(t -> t) + V[k:]).ToArray;

 V.Println;

end.

Пример

n= 13

27 -32 47 -45 33 28 -39 20 26 3 19 -35 5

47 33 28 27 -32 -39 -45 20 26 3 19 -35 5

Приложения:
Ответ дал: Аноним
0
Если программу загрузить, то подведя курсор к любому незнакомому месту, получаете подсказку что это.
Ответ дал: Аноним
0
V[:k] - это срез (часть) массива от его начала, до элемента с индексом k
Ответ дал: daryaja2011
0
Блин, а можно как нибудь по проще написать?
Ответ дал: Аноним
0
У Вас неверная терминология. Если есть два решения, одно в 6 строк, а второе, например, в 25, ясно что проще то, которое короче. Другой вопрос, что лично Вам оно непонятно, но это же Ваша проблема, верно же? Исходит она от того, что Вы не указали версию языка, в которой нужен код. Более того, Вы ВООБЩЕ НЕ НАПИСАЛИ, что код нужен на Паскале!
Ответ дал: Аноним
0
Могли получить код на С, Джаве, Питоне, Бейсике...
Вас заинтересует