Предмет: Информатика,
автор: Oops04
Pascal одномерный массив. Упорядочить каждые вторые ненулевые элементы последней четверти одномерного массива по убыванию обратных значений
Аноним:
Не знаю...
Ответы
Автор ответа:
0
PascalABC.NET 3.4.0, сборка 1671 от 31.05.2018
Внимание! Если программа не работает, обновите версию!
begin
var n:=36;
var a:=ArrRandom(n,-50,50); a.Println;
var n4:=n div 4;
var (s1,s2):=a.Select((v,i)->(v,i)).TakeLast(n4).Where(t->t[0]<>0)
.Slice(1,2).OrderByDescending(t->1/t[0]).UnZipTuple;
foreach var t in s1.ZipTuple(s2.Sorted) do a[t[1]]:=t[0];
a.Println
end.
Внимание! Если программа не работает, обновите версию!
begin
var n:=36;
var a:=ArrRandom(n,-50,50); a.Println;
var n4:=n div 4;
var (s1,s2):=a.Select((v,i)->(v,i)).TakeLast(n4).Where(t->t[0]<>0)
.Slice(1,2).OrderByDescending(t->1/t[0]).UnZipTuple;
foreach var t in s1.ZipTuple(s2.Sorted) do a[t[1]]:=t[0];
a.Println
end.
Приложения:
![](https://files.topotvet.com/i/bda/bdaff94a499ba0d1af306eaa51d5aee9.jpg)
Похожие вопросы
Предмет: Физкультура и спорт,
автор: m4z3d
Предмет: Математика,
автор: eline123
Предмет: География,
автор: danik10101
Предмет: Математика,
автор: ммотсршсщрсрм
Предмет: Математика,
автор: olesyapavlova1