// PascalABC.NET 3.3, сборка 1611 от 06.01.2018 // Внимание! Если программа не работает, обновите версию!
begin var k:=20; var a:=ArrRandom(k,-50,50); a.Println; var n:=ReadInteger('Введите число циклических сдвигов влево:') mod k; if n>0 then a:=(a[n:]+a[:n]).ToArray; a.Println end.
Var a:array[1..20] of integer; tmp, i: integer; begin randomize(); for i:= 1 to 20 do begin a[i]:= random(1000); Write(a[i], ' '); end; tmp:= a[1]; for i:= 1 to 19 do a[i]:=a[i+1]; a[20]:=tmp; Writeln(); for i:= 1 to 20 do Write(a[i], ' '); end.
// Внимание! Если программа не работает, обновите версию!
begin
var k:=20;
var a:=ArrRandom(k,-50,50); a.Println;
var n:=ReadInteger('Введите число циклических сдвигов влево:') mod k;
if n>0 then a:=(a[n:]+a[:n]).ToArray;
a.Println
end.
Примеры
-31 -27 -45 21 -49 14 -40 21 -13 -45 6 -44 -17 -12 9 4 25 -22 -11 35
Введите число циклических сдвигов влево: 5
14 -40 21 -13 -45 6 -44 -17 -12 9 4 25 -22 -11 35 -31 -27 -45 21 -49
-22 14 25 3 -12 -46 -12 -32 -12 -23 8 -44 -8 42 16 9 -8 33 -22 43
Введите число циклических сдвигов влево: 0
-22 14 25 3 -12 -46 -12 -32 -12 -23 8 -44 -8 42 16 9 -8 33 -22 43
-18 -42 10 48 -41 -32 -29 19 39 49 44 -1 15 -19 -32 -35 36 -6 -38 38
Введите число циклических сдвигов влево: 21
-42 10 48 -41 -32 -29 19 39 49 44 -1 15 -19 -32 -35 36 -6 -38 38 -18
-36 42 29 0 -43 -33 -17 46 -34 7 -6 -20 -30 19 -30 36 43 -22 -44 -44
Введите число циклических сдвигов влево: -1
-36 42 29 0 -43 -33 -17 46 -34 7 -6 -20 -30 19 -30 36 43 -22 -44 -44
a:array[1..20] of integer;
tmp, i: integer;
begin
randomize();
for i:= 1 to 20 do
begin
a[i]:= random(1000);
Write(a[i], ' ');
end;
tmp:= a[1];
for i:= 1 to 19 do
a[i]:=a[i+1];
a[20]:=tmp;
Writeln();
for i:= 1 to 20 do
Write(a[i], ' ');
end.