Дан массив A(n). Состоящий из целых чисел и натуральное число k. Требуется удалить из массива k-ый элемент и записать значение m вместо k — Pascal(Паскаль)

uses crt;
const nmax=100;
var a:array[1..nmax] of integer;
    n,i,j,k:byte;
    m:integer;
begin
clrscr;
randomize;
repeat
write('Размер массива до ',nmax,' n=');
readln(n);
until n in [1..nmax];
writeln('Массив:');
for i:=1 to n do
 begin
  a[i]:=random(50);
  write(a[i]:4);
 end;
writeln;
writeln;
repeat
write('Элемент с каким номером удалить от 1 до ',n,' k=');
readln(k);
until k in [1..n];
if k=n then n:=n-1
else
 begin
  for i:=k to n-1 do
  a[i]:=a[i+1];
  n:=n-1;
 end;
writeln('Элемент номер ',k,' удален');
for i:=1 to n do
write(a[i]:4);
writeln;
writeln;
writeln('Введите элемент для вставки m=');
readln(m);
if k=n+1 then
  begin
   n:=n+1;
   a[n]:=m;
  end
else
 begin
  n:=n+1;
  for i:=n downto k+1 do
  a[i]:=a[i-1];
  a[k]:=m;
 end;
writeln('Элемент ',m,' вставлен в позицию ',k);
for i:=1 to n do
write(a[i]:4);
readln
end.

Leave a Comment

− 5 = 3