Program P95;
 { Prelucrarea fişierelor IN.TXT şi OUT.TXT }
var F, G : text;
 a, b, c,
    p, s : real;
     str : string;
begin
 assign(F, 'IN.TXT');  { asociază F cu IN.TXT }
 rewrite(F);           { deschide F pentru scriere }
 writeln('Daţi numerele reale a, b, c:');
 while not eof do
   begin
     readln(a, b, c);  { citeşte a, b, c de la tastatură }
     writeln(F, a:8:2, b:8:2, c:8:2); { scrie a, b, c, ön F }
   end;
 close(F);             { închide F }
 reset(F);             { deschide F pentru citire }
 assign(G, 'OUT.TXT'); { asociază G cu OUT.TXT }
 rewrite(G);           { deschide G pentru scriere }
 while not eof(F) do
   begin
     readln(F, a, b, c);  { citeşte a, b, c din F }
     write(G, a:8:2, b:8:2, c:8:2); { scrie a, b, c în G }
     p:=(a+b+c)/2;
     s:=sqrt(p*(p-a)*(p-b)*(p-c));
     writeln(G, p:15:2, s:15:4);    { scrie p, s în G}
   end;
 close(F);             { închide F }
 close(G);             { închide G }
 reset(G);             { deschide G pentru citire }
 while not eof(G) do
   begin
     readln(G, str);   { citeşte str din G }
     writeln(str);     { afişeazň str la ecran }
   end;
 close(G);             { închide G }
 readln;
end.
