home *** CD-ROM | disk | FTP | other *** search
-
- Function CheckPrime(a : integer) : boolean;
- Var
- x : integer;
- y : integer;
- Begin
- y:=0;
- for x:=1 to (a div 2) do {Only #s up to half of a can be factors}
- begin
- if (a mod x)=0 then y:=(y+1)
- end;
- if y=2 then checkprime:=true else checkprime:=false;
- if a=1 then checkprime:=true;
- End;
-
- You see, only prime numbers have exactly two factors, themselves and one.
- With the exception of One. Therefore you have a specific IF for the
- number one. One is prime, yet its only factor is one. I think - Is one
- prime or not? Anyway, remove that line if it isn't, the function will work.