Ввести два одномерных массива X(N) и Y(M), где M>(N-2). Все элементы массива X, стоящие между минимальными и максимальным элементом, заменить элементами массива Y, начиная с первого. Если элементов в массиве Y больше, чем требуется для замены, то их не переписывать. Выдать на печать исходный и результирующий массив X и массив Y — Pascal(Паскаль)

uses crt;
var
   x,y:array[1..100] of integer;
   i,n,m,max,min,maxn,minn,z,s:integer;
begin
clrscr;
write('Размерности массива x=');
readln(n);
write('Размерность массива y (>n-2)=');
readln(m);
writeln('Массив x');
max:=0;
min:=40;
for i:=1 to n do
 begin
  x[i]:=random(51)-10;
  if (x[i]>=max) then
   begin
    max:=x[i];
    maxn:=i;
   end;
  if (x[i]<=min) then
   begin
    min:=x[i];
    minn:=i;
   end;
  write(x[i]:4);
 end;
writeln;
writeln('Массив y');
for i:=1 to m do
 begin
  y[i]:=random(51)-10;
  write(y[i]:4);
 end;
writeln;
if (maxn>minn) then
 for i:=minn+1 to maxn-1 do
  inc(s)
else
 for i:=maxn+1 to minn-1 do
  inc(s);
if (s<m) then write('Не больше') else
 begin
  if (maxn>minn) then
   for i:=minn+1 to maxn-1 do
    begin
     inc(z);
     x[i]:=y[z];
    end
  else
   for i:=maxn+1 to minn-1 do
    begin
     inc(z);
     x[i]:=y[z];
    end;
 writeln('Итог x');
  for i:=1 to n do
   write(x[i]:4);
 end;
readln
end.

Leave a Comment

+ 81 = 90