Код
Uses Crt;
LABEL 1;
Var
      FileTown,FileSumm:text;
      ch:char;
      i,Summ:longint;
      Town,s:string;
      Summ1:array [1..10] of longint;
      Town1:array [1..10] of string;
Begin
1:      ClrScr;
      Assign(FileTown,'town.dat');
      Reset(FileTown);
      Write('Введите город => ');
      Readln(Town);
      While ((not EOF(FileTown))and(pos(Town,s)<>1)) do begin
      Readln(FileTown,s);
      If pos(Town,s)<>0 then begin
      end;end;
      Close(FileTown);
      Assign(FileTown,'town.dat');
      Reset(FileTown);
      Assign(FileSumm,'summ.dat');
      Reset(FileSumm);
      For i:=1 To 10 Do Begin
      Readln(FileTown,Town1[i]);
      Readln(FileSumm,Summ1[i]);
      if s=Town1[i] then begin
      Write(Town1[i],' => ');
      Writeln(Summ1[i]);
      Write('Введите новую сумму => ');
      Readln(Summ1[i]);
      end;end;
      Close(FileSumm);
      Close(FileTown);
      Assign(FileSumm,'summ.dat');
      Rewrite(FileSumm);
      For i:=1 To 10 Do Begin
      Writeln(FileSumm,Summ1[i]);
      end;
      Close(FileSumm);
      Write('Нажмите <Enter>');
      repeat
      ch:=ReadKey;if ch=chr(13) then begin Goto 1;end;
      if ch=chr(27) then until ch=chr(27);
End.
Вот прога, которая практически выполняет эту задачу, но слишком она и сама сложная. Поиск с файла "города", запись городов с этого же файла в массив, так же и суммы. Работа через массив. Когда то очень давно, лет так 6 назад. Я делал эту задачу при помощи функции Seek (var имя_файла;номер_компоненты:LongInt) - передвигает текущую позицию файла в заданную компоненту. Причем поиск "города" из файла и считывания суммы пренадлежащей заданному городу искались с помощью этой функции. А вот, как это сделать с головы вылетело, годы...  Ведь функция Seek не работает с текстовыми файлами.
И ещё, готовые результаты новых сумм записывались не заново, т.е. не командой Rewrite, а командой Append. Хотя функция Append используется только в текстовых файлах, а Seek нет. Что очень странно! Может процедуру надо написать.  Короче, кто знает как это сделать, прошу откликнуться. А вот использовался массив или нет не помню, но одно точно знаю в файле с городами, было около 10000 городов. Выдержал ли бы массив такого или нет?
                                                            ???
Я наверное уже достал всех своей проблемой, но больше ни кто не поможет!
Заранее благодарен,
Алексей.