Удалить комментарии из текста паскаль программы - Turbo Pascal
Формулировка задачи:
Есть текстовый файл в котором записан код паскаль программы, удалить оттуда все комментарии(после // и в /* */ )
Решение задачи: «Удалить комментарии из текста паскаль программы»
textual
Листинг программы
const FNameIN:string='prg.pas';
var
fin,fout:text;
s:string;
i:integer;
b:boolean;
begin
assign(fin,'prg.pas');
reset(fin);
assign(fout,'temp.tmp');
rewrite(fout);
b:=false;
while not eof(fin) do begin
readln(fin,s);
i:=length(s);
if pos('/*',s)>0 then begin
b:=true;
delete(s,pos('/*',s),length(s));
end;
if pos('*/',s)>0 then begin
b:=false;
delete(s,1,pos('*/',s)+1);
end;
if pos('//',s)>0 then delete(s,pos('//',s),length(s));
if (length(s)<>0) or (i=0) then writeln(fout,s);
end;
close(fin);
close(fout);
rename(fin,copy(FNameIn,1,pos('.',FNameIn))+'old');
rename(fout,FNameIn);
end.