Дан массив, состоящий из 20 элементов. Произвести вставку числа 10 в позицию m данного массива. Позиция m должна соответствовать диапазону 1≤m≤n.

Дан массив, состоящий из 20 элементов. Произвести вставку числа 10 в позицию m данного массива. Позиция m должна соответствовать диапазону 1≤m≤n.
Гость
Ответ(ы) на вопрос:
Гость
Program n1; const n=20; var a: array[1..n] of integer; i,m: integer; begin writeln('исходный массив:'); for i:=1 to n do begin a[i]:=random(15); write(a[i],' '); end; writeln; write('введите позицию: '); readln(m); if (m>=1) and (m<=n) then begin a[m]:=10; writeln('полученный массив:'); for i:=1 to n do write(a[i],' '); end; end.
Гость
Решение со смещением всех последующих элементов.  program znanija; const n = 21; // N + 1 var  a:array[1..n] of integer; m, i:integer; begin write('Введите позицию для вставки: '); readln(m); if (m<1) or (m>n-1) then begin  writeln('Недопустимое значение m');  exit; end; write('Массив до вставки: '); for i := 1 to n-1 do begin  a[i] := random(100);  write(a[i], ' ');  end; writeln(); for i := n - 1 downto m do // Смещение a[i+1] := a[i];     a[m] := 10;  // Вставка write('Массив после вставки: '); for i := 1 to n do  write(a[i], ' '); end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы