.
: . 11
..
: .
2012
4
.
:
Pascal :
( text);
( file of );
( file).
( )
, , . , / , .
, .
: , , .
q assign(, ).
assign . , close.
q reset() ( ) . File not found ( ). , reset
q ioresult - ( ). , . ioresult .
rewrite . , , . , .
q close(). close, , . .
rename erase . . , .
q eof() , (End Of File). true, . false.
|
|
q , , eoln.
q append(). . , , . append .
:
q ;
q ;
q ;
q .
, . , , . .
:
unit <>; { }
{$R+} { , }
interface { }
uses { }
label { }
const { }
t { }
var { }
procedure { }
function { }
implementation { }
uses { }
label { }
const { }
t { }
var { }
procedure { }
function { }
begin { }
..... { }
end. { }
1
. , . , . ( ).
.
.
s | real | |
max | real | |
f | real | |
f | assign | |
i | integer |
.
var s,max,s1:string;
i:integer;
f:text;
Begin
max:='';
assign(f,'C:\WORK\MAX.txt');
rewrite(f);
Write(' : ');readln(s);
For i:=1 to length(s) do
Begin
if s[i]<>' ' then s1:=s1+s[i] else begin
if s1>max then max:=s1;
s1:='';
end;
end;
Writeln(' - ',length(max));
For i:=1 to length(s) do
Begin
if s[i]<>' ' then s1:=s1+s[i] else begin
if length(s1)=length(max) then write(f,s1,#13,#10);
s1:='';
end;
end;
close(f);
end.
max:='' |
assign(f,'C:\WORK\MAX.txt') |
rewrite(f) |
' : ' |
s |
i:=1 to length(s) |
s[i]<>' ' |
Y |
s1:=s1+s[i] |
s1>max |
Y |
max:=s1 |
s1:='' |
' - ',length(max) |
i:=1 to length(s) |
s[i]<>' ' |
Y |
s1:=s1+s[i] |
length(s1)=length(max) |
Y |
f,s1,#13,#10 |
s1:='' |
close(f) |
|
|
.
Running "c:\program files (x86)\free pascal\bin\i386-win32\.exe
:
6
2.
, ( ) :
. ( , )
. ( )
.
, , .
modul
Unit
unit1;
Interface
Procedure probel(var s:string);
Procedure probel2(var s:string);
Procedure prob_nach (s:string);
Procedure prob_con (s:string);
Procedure prob_dv (s:string);
Implementation
Procedure prob_dv (s:string);
Begin
Writeln(' ');
readln(s);
while (pos(' ',s)=1) and (pos(' ',s)=length(s)) do begin
delete (s,1,1);
delete (s,length(s),1);
end;
end;
Procedure prob_nach (s:string);
Begin
Writeln(' ');
readln(s);
while pos(' ',s)=1 do delete (s,1,1);
end;
Procedure prob_con (s:string);
Begin
Writeln(' ');
readln(s);
while pos(' ',s)=length(s) do delete (s,length(s),1);
end;
Procedure probel(var s:string);
Begin
Writeln(' ');
readln(s);
Whilepos(' ', s)>0 do
delete(s, pos(' ', s), 1);
end;
Procedure probel2(var s:string);
Begin
Writeln(' ');
readln(s);
Whilepos(' ', s)<0 do
delete(s, pos(' ', s), 1);
end;
end.
Program
Uses
unit1;
Var
s,i:char;
Begin
writeln('1. .');
writeln('2. .');
writeln('3. .');
writeln('4. .');
writeln('5. .');
writeln(' , ');
readln (i);
Casei of
'1': prob_dv(s);
'2': prob_nach(s);
'3': prob_con(s);
'4': probe_l(s);
'5': probe_l2(s);
else writeln(' 1 5');
end;
end.
'1. .' '2. .' '3. .' '4. .' '5. .' ' , ' |
i |
i |
'1' |
prob_dv(s) |
'2' |
prob_nach(s) |
'3' |
prob_con(s) |
'4' |
probe_l(s) |
'5' |
probe_l2(s) |
else |
' 1 5' |