Uses crt;
var i,k,c:integer;
s:real;
op,np:boolean;
begin
op:=false;
repeat begin
repeat begin
s:=1;
if(np = true) then begin clrscr; writeln('В диапазоне 1-10'); end;
write('Введите конечное число: ');readln(k);
if ((k <= 10) and(k > 0)) then np:=false
else np:=true;
end;
until (np = false);
for i:=1 to k do s:=s*i;
writeln('Произведение чисел от 1 до ',k,' = ',s:1:0);
write('Ещё раз?(1/0): '); read(c);
if(c = 0) then op := true
else clrscr
end;
until (op = true);
end.