ПОдчеркнул в одном месте не знаю как вывести с помощью какой переменной. ПЛюс если есть ошибки пишите Сама задача: Даны 2 массиваодномерных, надо их по отдельности упорядочить(они могут быть уже исходно упорядочены по воздрастунию или один из них), затем слить эти массивы в третий массив тоже по возростанию. ВЫвести готовый массив.
program szs; type mas100=array[1..100] of integer; var a, b, c:mas100; na, nb, i:integer; procedure sort(var a: mas100; n:integer); var i, k:integer; temp:integer; begin for i:= n downto 2 do for k:=1 to i-1 do if a[k]>a[k+1] then begin r:=a[k]; a[k]:=a[k+1]; a[k+1]:= r; end; end; procedure merge(var a:mas100; na:integer; var b:mas100; nb:integer; var c:mas100); var ia, ib, ic, j, ici:integer; begin ia:=1; ib:=1; ic:=1; while (ia<=na) or (ib<=nb) do begin if (a[ia]<=b[ib]) or (ib>nb) then begin c[ic]:=a[ia]; ia:=ia +1; end else begin c[ic]:=b[ib]; ib:=ib+1 end; ic:=ic+1; end; end; procedure get_mas(var a:mas100; var n:integer) begin writeln ('Введите количество элементов массива, нажмите клавишу "Enter", затем введите последовательно все элементы массива' ); read (n); for i:=1 to n do readln(a); end; begin get_mas(a,na); get_mas(b,nb); sort (a, na); { сортировка и есть проверка } sort (b, nb); merge(a,na, b, nb, c); Writeln ('Получившийся отсортированный массив'); for i:=1 to na+nb do write (c, ' ') end.