// PascalABC.NET 3.3, сборка 1540 от 16.09.2017 // Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('n='); var a:=ArrRandom(n,-35,35); a.Println; var (k1,k3):=ReadInteger2('Введите границы индексов для замены элементов:'); // блок "защиты от дурака" if k1<1 then k1:=1; if k1>n-1 then k1:=n-1; if k3<1 then k3:=1; if k3>n-1 then k3:=n-1; if k1>k3 then Swap(k1,k3); // for var i:=k1-1 to k3-1 do a[i]:=-a[i]; a.Println end.
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('n=');
var a:=ArrRandom(n,-35,35); a.Println;
var (k1,k3):=ReadInteger2('Введите границы индексов для замены элементов:');
// блок "защиты от дурака"
if k1<1 then k1:=1;
if k1>n-1 then k1:=n-1;
if k3<1 then k3:=1;
if k3>n-1 then k3:=n-1;
if k1>k3 then Swap(k1,k3);
//
for var i:=k1-1 to k3-1 do a[i]:=-a[i];
a.Println
end.
Пример
n= 13
-27 18 15 31 27 -1 -5 20 -20 -34 -7 -33 16
Введите границы индексов для замены элементов: 6 9
-27 18 15 31 27 1 5 -20 20 -34 -7 -33 16