Вот сама функция

Код:
function pr(x:longint):boolean;
var d:longint;
begin
if x mod 2 =0 then pr:=(x=2)
              else 
              begin
  d:=3;
  while (d*d<=x)and(x mod d <>0) do
  d:=d+2;
  pr:=(d*d>x)and(x<>1);
end;
end;

Пример задачи

Вывести все простые числа от M до N включительно.
Ограничения: 2 <= M <= N <= 300 000.
Ввод: В первой строке находятся разделённые пробелом M и N.
Вывод: Вывести числа в порядке возрастания, по одному в строке. Если между M и N включительно нет простых - вывести "Absent".
Примеры

Ввод 1    Ввод 2
2 5       4 4
Вывод 1   Вывод 2
2         Absent
3
5

Код:
var n,m,i,f:LONGINT;
function pr(x:longint):boolean;
var d:longint;
begin
if x mod 2 =0 then pr:=(x=2)
              else 
              begin
  d:=3;
  while (d*d<=x)and(x mod d <>0) do
  d:=d+2;
  pr:=(d*d>x)and(x<>1);
end;
end;

begin
f:=0;
readln(n,m);
for i:=n to m do
if pr(i) then begin writeln(i); f:=1; end;

if f=0 then writeln('Absent');
end.