home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / spezial / 02 / t14.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1988-02-12  |  1.0 KB  |  61 lines

  1. program t14;
  2. (* mischt zwei geordnete files zu einem geordneten file *)
  3. var f,g,h:file of integer;
  4.     i:integer;
  5.     endfg:boolean;
  6.  
  7. procedure initf;
  8. var i:integer;
  9. begin
  10.   rewrite(f,'f.dat');
  11.   i:=1;
  12.   while i<20 do
  13.    begin f^:=i; put(f);i:=i+2; end;
  14.   close(f);
  15. end;
  16.  
  17. procedure initg;
  18. var i:integer;
  19. begin
  20.   rewrite(g,'g.dat');
  21.   i:=0;
  22.   while i<=20 do
  23.    begin g^:=i;put(g);i:=i+2;end;
  24.   close(g);
  25. end;
  26.  
  27.  
  28. begin
  29.  writeln('Mischen zweier Dateien f und g in die Datei h');
  30.  initf;initg;
  31.  reset(f,'f.dat');reset(g,'g.dat');rewrite(h,'h.dat');
  32.  endfg:=eof(f) or eof(g);
  33.  while not endfg do
  34.  begin
  35.    if f^<g^ then
  36.      begin
  37.        h^:=f^;get(f);
  38.        endfg:=eof(f);
  39.      end
  40.      else begin
  41.             h^:=g^;get(g);
  42.             endfg:=eof(g);
  43.           end;
  44.    put(h);
  45.  end;
  46.  while not eof(g) do begin
  47.    h^:=g^;put(h);get(g);end;
  48.  while not eof(f) do begin
  49.    h^:=f^;put(h);get(f);end;
  50.  close(h);
  51.  reset(h,'h.dat');
  52.  while not eof(h) do begin
  53.  i:=h^;
  54.  write(i,' ');
  55.  get(h);
  56. end;
  57.  writeln;
  58. end.
  59.  
  60.  
  61.