Исправте пожалуста что тут неправильно, не могу додуматься что не так, программа написана в Pascal ABCprogram Project2;u
program Project2;
uses CRT, graphabc;
type
TArr= array [1..100] of integer;
var
Arr:TArr;
quantity,l,numb:integer;
procedure Main(const number:integer;const Flag:Boolean);
var
i,j,n:integer;
PrimeNumber:Boolean;
begin
n:=0;
for i:=2 to number-1 do
begin
if (number mod i = 0) then //åñëè îñòàòîê îò äåëåíèÿ =0, çíà÷èò ýòî ÷èñëî äåëèòåëü
begin
PrimeNumber:=True;
for j:=2 to i-1 do //ïðîâåðÿåì íàéäåíûé äåëèòåëü íà ïðîñòîòó
begin
if (i mod j = 0) then
PrimeNumber:=False;
end;
if (PrimeNumber=True)then
if (Flag=true)then
inc (quantity)
else
begin
Arr[n]:=i;
inc (n);
end;
end;
end;
end;
begin
quantity:=0;
writeln('Enter your number');
readln(numb);
Main(numb,True);
SetLength(Arr,quantity);
Main(numb,False);
writeln('Prime deveders of your number:');
for l:=0 to quantity-1 do //âûâîäèì ìàññèâ íà ýêðàí
begin
Write(Arr[l]);
Write(' ');
end;
writeln('Press enter to exit');
readln;
end.