Basendo-se no procedimento escreve, você deve implementar o procedimento intercala que intercala os elementos de dois vetores e os escreve em um arquivo de saída (veja o exemplo na outra página).
Em seguida, você deve implementar o procedimento casa, que dados dois vetores ordenados, escreve no arquivo de saída a união destes elementos formando uma única seqüência ordenada. Para simplificar, considere que os seus arquivos de entrada já contêm elementos ordenados.
program arq_vet;
const tam_vet = 100;
type tipo_vetor = array [1..tam_vet] of integer;
tipo_nome = string[40];
procedure le(nome_arq: tipo_nome ; var vet: tipo_vetor; var n: integer);
var
i : integer;
arq : text;
begin
assign(arq, nome_arq);
reset (arq);
readln(arq, n);
if (n > tam_vet) then
n := tam_vet;
for i:= 1 to n do
readln (arq, vet[i]);
close(arq);
end;
procedure escreve(nome_arq: tipo_nome; var vet: tipo_vetor; var n: integer);
var
i : integer;
arq : text;
begin
assign(arq, nome_arq);
rewrite(arq);
writeln(arq, n);
for i:= 1 to n do
writeln (arq, vet[i]);
close(arq);
end;
procedure intercala (nome_arq : tipo_nome;
var vet1, vet2: tipo_vetor; n1, n2: integer);
...
procedure casa (nome_arq : tipo_nome;
var vet1, vet2 : tipo_vetor; n1, n2: integer);
...
var
vet1, vet2 : tipo_vetor;
n1, n2 : integer;
begin
le('dados1.txt', vet1, n1);
le('dados2.txt', vet2, n2);
escreve('copia1.txt', vet1, n1);
intercala('intercala.txt', vet1, vet2, n1, n2);
casa ('casa.txt', vet1, vet2, n1, n2);
end.
Resolução parcial (o procedimento casa deve ser implementado no projeto 3)