program gop2;
uses crt;
var
q,l,i : integer;
f1,f2 : text;
p,qq : char;
s : string;
name,name1 : string[80];
procedure newfile;
begin
write('enter file name f1:');
readln(name);
assign(f1,name);
rewrite(f1);
writeln('text:');
readln(s);
write(s);
writeln(f1,s);
readln;
end;
procedure work;
begin
write('enter file name f1:');
readln(name);
assign(f1,name);
reset(f1);
write('enter file name f2:');
readln(name1);
assign(f2,name1);
rewrite(f2);
qq:=' ';
l:=length(s);
for i:=1 to l do
begin
if (s[i]='-') then
begin
while (not eof(f1) and (s[i]<>' ')) do
read(f1,s[i]);
end;
if ((s[i]<>'-') and (s[i]<>' ')) then
write(f2,s[i]);
if (s[i]=' ') then
write(f2,qq);
if (not eof(f1)) then
read(f1,s[i]);
end;
reset(f1);
reset(f2);
end;
procedure view;
begin
write('enter file name: ');
readln(name);
writeln;
assign(f1,name);
reset(f1);
while not eof(f1) do
begin
read(f1,qq);
write(qq);
end;
readln;
end;
begin
repeat
clrscr;
writeln(' =============menu==============');
writeln(' 1 - create new file ');
writeln(' 2 - run program ');
writeln(' 3 - view file ');
writeln(' 4 - exit ');
writeln(' ===============================');
readln(q);
clrscr;
case q of
1: newfile;
2: work;
3: view;
end;
until q=4;
end.
в этой программе не работает procedure newfile
она не записывает строку в файл, и файл получается пустой...
помогите решить проблему