Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
30
Добавлен:
17.03.2022
Размер:
2 Кб
Скачать
program Lab2_1_var12;
const 
  n=5;  {колличество элементов в массиве}

var 
  x,y:array [1..n]of real; {два массива с вещественным типом}
  i,L,k:integer; {переменные для цикла}

procedure Shift(val:integer); {процедура сдвига элементов}
  var i:integer;  {}
  begin
    L:=n-k; {блок переноса элементов массива}
    for i:=1 to L do 
      begin 
        y[i]:=x[i+k]; {добавляем в массив y, эелементы массива x со смещением}
      end;
    for i:=n downto L+1 do
      begin
        y[i]:=x[i-L]; {добавляем последние элеменя массива x в массив y}
      end;
  end;
begin
  writeln ('Массив до сдвига: ');  {формирование массива x}
  randomize;  {функция случайных чисел}
  for i:=1 to n do  {цикл от 1 до n}
    begin
      x[i]:=random(10); {заполняем массив x случайными числами}
      write (x[i]:2)  {выводим на экран элементы массива x}
    end;
  begin 
    writeln;
    writeln('Введите величину сдвига: '); {запрашиваем величину сдвига}
    readln(k); {величину сдвига присваиваем переменной k}
    if (1<=k) and (k<=(n-1)) then {проверка на условие переменной k}
      begin
        Shift(k);
        writeln ('Массив после сдвига: '); {вывод массива Y}
        for i:=1 to n do
          write (y[i]:2) {вывод массива y}
      end
      else writeln ('k не подходит'); {вывод если k не удовлетворяет условию}
  end;
end.
Соседние файлы в папке Лаболаторная 2