function prime(a:integer):boolean
var
k:integer;
begin
prime:=True;
for k:=2 to trunc(sqrt(a)) do
begin
if a mod k=0 then
begin
prime:=False; {вот тут у вас было p}
break {этот break выполнялся при первом же цикле, из-за отсутствия begin end y if'a}
end
end
end;