Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program t_17_2_a(input,output,f);
- type
- queue=^node;
- node=record
- elem: real;
- next: queue
- end;
- FR=file of real;
- var f1,f2: FR;
- c,i,a,b: real;
- begO1,endO1,begO2,endO2: queue;
- procedure pushQ(var begO,endO: queue; c: real);
- var u: queue;
- begin
- new(u);
- u^.elem:=c;
- u^.next:=nil;
- if(begO=nil)
- then begO:=u
- else
- endO^.next:=u;
- endO:=u;
- end;
- procedure popQ(var begO,endO: queue; c: real);
- var u: queue;
- function emptyQ(var x1: queue): boolean;
- begin
- emptyQ:=(x1=nil);
- end;
- begin
- if emptyQ(begO) then
- writeln('очередь пуста')
- else
- begin
- c:=begO^.elem;
- u:=begO;
- begO:=begO^.next;
- dispose(u);
- end;
- end;
- begin
- i:=0;
- assign(f1,'input.txt');
- assign(f2,'task.txt');
- rewrite(f1);
- read(c);
- while(c<>0) do
- begin
- write(f1,c);
- read(c);
- end;
- read(a,b);
- reset(f1);
- rewrite(f2);
- while (not(eof(f1))) do
- begin
- read(f1,c);
- if(c<a) then
- write(f2,c)
- else if((c>=a) and (c<=b)) then
- pushQ(begO1,endO1,c)
- else
- pushQ(begO2,endO2,c);
- end;
- while(begO1<>nil) do
- begin
- popQ(begO1,endO1,c);
- write(f2,c);
- end;
- while(begO2<>nil) do
- begin
- popQ(begO2,endO2,c);
- write(f2,c);
- end;
- reset(f2);
- while not(eof(f2)) do
- begin
- read(f2,c);
- write(c,' ');
- end;
- writeln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment