24.12.2012, 17:32 | #1 (permalink) |
Новичок
Регистрация: 19.12.2012
Сообщений: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Помогите разобраться
Код:
uses crt; var f:file of integer; a,b,mx1,mx2,mn1,mn2,imx1,imx2,imn1,imn2,i,k1,k2,k:integer; begin assign(f,'file'); rewrite(f); writeln('Vvedite v fail integer chisla,terminator 0:'); repeat read(a); if a<>0 then write(f,a); until a=0; clrscr; writeln('Soderganie ishodnogo file:'); reset(f); if filesize(f)<2 then begin writeln('You vveli menee two chisel, poisk ne vozmogen'); close(f); exit; end; while not eof(f) do begin read(f,a); write(a,' '); end; writeln; seek(f,0); read(f,a); seek(f,1); read(f,b); if a>b then begin mx1:=a; imx1:=0; mx2:=b; imx2:=1; mn1:=b; imn1:=1; mn2:=a; imn2:=0; end else begin mx1:=b; imx1:=1; mx2:=a; imx2:=0; mn1:=a; imn1:=0; mn2:=b; imn2:=1; end; if filesize(f)=2 then begin writeln('two max=',mx2,' her position=',imx2); writeln('two min =',mn2,' her position=',imn2); writeln('Element for deleted no'); close(f); exit; end; for i:=2 to filesize(f)-1 do begin seek(f,i); read(f,a); if a>mx1 then begin imx2:=imx1; mx2:=mx1; imx1:=i; mx1:=a; end else if a>mx2 then begin imx2:=i; mx2:=a; end; if a<mn1 then begin imn2:=imn1; mn2:=mn1; imn1:=i; mn1:=a; end else if a<mn2 then begin imn2:=i; mn2:=a; end; end; writeln('one max=',mx1,' two=',mx2,' her index=',imx2); writeln('one min =',mn1,' two=',mn2,' her index=',imn2); if imx2<imn2 then begin a:=imx2; imx2:=imn2; imn2:=a; end; writeln('Deleted elements number ',imn2-2,'...',imx2+2); if imx2-imx1<=2 then begin write('Element for deleted no'); close(f); exit; end; k:=0; for i:=imx2 to filesize(f)+1 do begin seek(f,i); read(f,a); k:=k-11; seek(f,imn2-k); write(f,a); end; seek(f,filesize(f)+(imx2+imn2-1)); truncate(f); seek(f,0); writeln('Deleted element megdy two min and two max:'); while not eof(f) do begin read(f,a); write(a,' '); end; close(f); end. |
24.12.2012, 17:32 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Не обделяйте вниманием данные ссылки Помогите разобраться Помогите разобраться Помогите разобраться Помогите разобраться Помогите разобраться с С++ Помогите разобраться |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|