14.04.2012, 19:11 | #11 (permalink) |
Member
Регистрация: 27.11.2011
Сообщений: 29
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
ответ в личку пожалст. program ABC; var a,b,i,maxin,minin,max,min,sum,right,left :integer; f,f1:file of integer; begin assign(f,'f.dat'); write('введите первую компоненту файла f (признак конца ввода: "555") '); //ввод файла rewrite(f); readLn(b); i:=1; //номер компоненты файла while b<>555 do begin write(f,b); inc(i); write('введите ',i:2,'-ую компоненту файла f '); readLn(b); end; reset(f); //вывод файла до изменения writeLn('файл f до изменения:'); while not EOF(f) do begin read(f,b); write(b:5); end; writeLn; max:=-32000; min:=32000; reset(f); // поиск максимума и минимума while not EOF(f) do begin read(f,b); if b>max then begin max:=b; maxin:=filePos(f); end; if b<min then begin min:=b; minin:=filePos(f); end; end; writeln('minin= ',minin,' maxin= ',maxin); sum:=0; if maxin>minin then //очередь begin left:=minin; right:=maxin; end else begin left:=maxin; right:=minin; end; for i:=left+1 to right-1 do begin seek(f,i-1); read(f,b); sum:=sum+b; end; writeln('Sum= ',sum:5); //здесь нужно подкорректировать reset(f); i:=0; while not eof (f) do begin inc(i); read(f,b); seek(f, left+i or right-i); write(f,sum); end; reset(f); close(f); // ^^ writeLn('файл f после изменения:'); reset(f); while not EOF(f) do begin read(f,b); write(b:5); end; close (f); end. |
14.04.2012, 19:11 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Рекомендую не терять времени, а ознакомиться с похожими топиками База данных одним файлом Операции с файлом Работа с текстовым файлом, Pascal Проблема с файлом |
14.04.2012, 19:39 | #12 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
По-моему, ничего из этой затеи не выйдет: насколько мне известно, файл может быть открыт либо на чтение, либо на запись, но не на то и другое сразу. Впрочем, может быть, какие-нибудь трансляторы этому и научились - не знаю.
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|