Помощь - Поиск - Пользователи - Календарь
Полная версия: Обьединение массивов
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
kess
Заданы два одномерныхмассива различных размеров. Обьединить их в однин массив, включив второй массив между K-тым и (K+1)-м элементами первого массива (K задано) заранее сасибо
Артемий
Маленький вопросик - массив чего?Строк,чисел?
kess
Цитата(Артемий2 @ 16.03.2007 20:21) *

Маленький вопросик - массив чего?Строк,чисел?

не указано.... скорей всего чисел
Артемий
Попробуй так:
const
a: array [1..4] of Integer = (3,6,2,9);
b: array [1..7] of Integer = (23,34,56,78,12,33,27);
var
comp: array [1..11] of Integer;
k,i,l: Integer;
begin
readln(k);
l:=0;
for i:=1 to 11 do begin
if not (k+1=i) and (k+1>i) then begin
comp[i]:=a[i];
end else begin
if not (l=7) then begin
Inc(l);
comp[i]:=b[l];
end else begin
inc(k);
comp[i]:=a[k];
end;
end;
end;
for i:= 1 to 11 do write(comp[i],' ');
readln
Kirill_
А можно и так!
Код
const
     a=10;
     b=3;
var
   mas_1:array [0..a] of integer;
   mas_2:array [0..b] of integer;
   mas:array [0..(a+b+1)] of integer;
   k,i,m:integer;
begin
     For i:=0 to a do
        begin
         write('mas_1[',i,']=');
          readln(m);
          mas_1[i]:=m;
       end;
     For i:=0 to b do
        begin
         write('mas_1[',i,']=');
          readln(m);
          mas_2[i]:=m;
       end;
     writeln('K=');
     readln(k);
     for i:=0 to k-1 do
          mas[i]:=mas_1[i];
     for i:=0 to b do
          mas[(k+1)+i-1]:=mas_2[i];
     m:=0;
     for i:=k to (a-k+2) do
     begin
          mas[k+b+1+m]:=mas_1[i];
     m:=m+1;
    end;
for i:=0 to (a+b+1) do
     write(s[i],' ');

end.
Артемий
А ты уверен что твой вариант компилируется?? dry.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.