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

smit007agent smit007agent    1   22.08.2019 21:50    0

Ответы
EgueneOKSDFSOFK EgueneOKSDFSOFK  05.10.2020 13:30
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.
ПОКАЗАТЬ ОТВЕТЫ
МААклерша МААклерша  05.10.2020 13:30
Решение со смещением всех последующих элементов. 

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.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика