Помощь - Поиск - Пользователи - Календарь
Полная версия: Типизированные файлы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Credo
Даны два файла вещественных чисел с именнами Name1 и Name2, элементы которых упорядочены по убыванию. Объединить эти файлы в новый файл с именем Name3, сохранив порядочность элементов.
Ошибок море. Файл не найден. Непонятный спецификатор. на eof(f,a) ругается что скобки нехватае... ypriamii.gif
Помогите исправьте мою ошибку
uses crt;
 const n=5;
var
 g,h,f,Name3,Name2,Name1 : file of integer;
 i,b,a : integer;
begin
 clrscr;
 assign(g,'Name1.txt'); assign(h,'Name2.txt'); assign(f,'Name3.txt');
 rewrite(g);
 for i:=1 to n do
a[i]:=n-i;
begin
 write('a='); readln(a);
 write(g,a);
  end;
   close(g);
  reset(g); rewrite(f);
  while not eof(g) do
   begin
    read(g,a);
    write(f,a)
     end;
      close(g);
     reset(h);
     while not eof(h) do
      begin
       read(h,b);
       write(f,b);
        end;
        close(h);
        reset(f);
        while not eof(f,a) do
         begin
        read(f,a);
        write(a);
         end;
          close(f);
        end.
Client
Слияние файлов
Credo
Спасибо, программа запускается ввожу числа... и вуаля файл не найден mad.gif ... исправьте мою ошибку пожалуста
Client
может они не создаются у тебя или просто не существуют?
2 rewrite я вижу, значит 2 файла должны создаться, а что с 3 файлом?
Credo
а да спасибо программа работает а почему ничего не сортирует? blink.gif ни по возрастанию ни по убыванию


 const n=5;
var
 g,h,f,Name3,Name2,Name1 : file of integer;
 i,b,a : integer;
begin
 assign(g,'Name1.txt'); assign(h,'Name2.txt'); assign(f,'Name3.txt');
 rewrite(g);
 for i:=1 to n do

begin
 write('a='); readln(a);
 write(g,a);
  end;
   close(g);
  reset(g); rewrite(f); rewrite(h);
  while not eof(g) do
   begin
    read(g,a);
    write(f,a)
     end;
      close(g);
     reset(h);
     while not eof(h) do
      begin
       read(h,b);
       write(f,b);
        end;
        close(h);
        reset(f);
        while not eof(f) do
         begin
        read(f,a);
        writeln(a);
         end;
         readln;
          close(f);
        end.
Client
ты по ссылке ходил? процедуру видел?
Цитата
а почему ничего не сортирует?
а с чего бы ей что-то сортировать? она и не должна
Credo
хД laugh.gif извините затупил, все правильно, спасибо вам. Дано я не так прочитал lol.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.