program Pesi;
var
categoria, scelta : char;
peso: real;
procedure CalcolaCategoria (p: real; var c: char);
begin
if (p <= 50.0) then
c := 'A'
else
if (p <= 125.0) then
c := 'B'
else
if (p <= 200.0) then
c := 'C'
else
c := 'D';
end;
begin
repeat
write('peso da valutare: ');
readln(peso);
if (peso < 0) then
writeln('dato scorretto: ', peso :5:2, ' non e'' un valore ammissibile')
else
begin
CalcolaCategoria(peso, categoria);
writeln('----------------- peso di categoria ', categoria);
end;
writeln(' si vuole valutare un altro peso? (S/N) ');
readln(scelta);
until (scelta <> 'S') and (scelta <> 's');
writeln(' fine ');
end.