Запишите в массив 20 случайных чисел.Циклически сдвиньте массив на лево.По

Запишите в массив 20 случайных чисел.Циклически сдвиньте массив влево.
По ИКТ(информатика)
Помогите!Буду признательна

Задать свой вопрос
2 ответа
// 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 ngt;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
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.
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт