===== PascalABC.NET =====
begin
var n := ReadInteger('n=');
var a := ArrRandom(n, 10, 99); // для одинаковых позиций вывода
a.Println;
// элементы, кратные трем, упорядочить по убыванию
// прочие оставить на своих местах
var v := a.Select((v, i) -> (v, i))
.Where(t -> t[0] mod 3 = 0)
.OrderByDescending(t -> t[0])
.ToArray;
var w := v.Select(t -> t[1]).Sorted.ToArray;
for var i := 0 to w.High do
a[w[i]] := v[i][0];
a.Println
end.
Copyright © 2025 SCHOLAR.TIPS - All rights reserved.
Answers & Comments
===== PascalABC.NET =====
begin
var n := ReadInteger('n=');
var a := ArrRandom(n, 10, 99); // для одинаковых позиций вывода
a.Println;
// элементы, кратные трем, упорядочить по убыванию
// прочие оставить на своих местах
var v := a.Select((v, i) -> (v, i))
.Where(t -> t[0] mod 3 = 0)
.OrderByDescending(t -> t[0])
.ToArray;
var w := v.Select(t -> t[1]).Sorted.ToArray;
for var i := 0 to w.High do
a[w[i]] := v[i][0];
a.Println
end.