Функция не прекращает работу до последнего end или exit
поэтому надо И ничего страшного в этой мере нет. Наоборот, Вы не прокручиваете весь цикл ( который можно проверять не до самого числа а до его квадратного корня ) и экономите время.
В Delphi 2010 можно записать Exit(True);
Тоже не обратил внимания. Надо наоборот
Код:
function IsSimp(i:integer):boolean;
var
j:integer;
begin
for j := 2 to Trunc(Sqrt(i)) + 1 do
if ((i mod j)=0) then
begin
result:=false; // делиться значит не простое
exit;
end;
result:=true;
end;