Нахождение простых чисел в диапозоне от N1 до N2
Простые числа - это – это числа которые делятся на 1 и на самих себя без остатка
У меня почему то выводит все числа.
Вот алгоритм и интерфейс.
{$R *.dfm}
//проверяет простые ли числа
procedure prover(N:integer; var ok:Boolean);
var d,r:integer;
begin
d:=2;
repeat
r:=N mod d;
if r<>0
then d:=d+1;
until r=0;
ok:=true;
end;
//вывод простых чисел
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
st:string;
yes:boolean;
begin
prover(StrToInt(Edit1.Text), yes );
st:='';
for i:=StrToInt(Edit1.Text) to StrToInt(Edit2.Text) do
if yes=true then
st:=st+inttostr(i)+#13;
label5.caption:=st;
end;
end.
Да и вопрос в том, чтобы выводились только простые числа, а не все подряд?
Нужно чтобы использовалась либо процедура либо функция. Я выбрал процедуру, так как решение может реализовываться как процедурой так и функцией.