用Pascal语言求出1——1000以内的孪生素数!

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 10:30:58

用Pascal语言求出1——1000以内的孪生素数!
用Pascal语言求出1——1000以内的孪生素数!

用Pascal语言求出1——1000以内的孪生素数!
思路:
1.定义一个“函数prime”,判断该数是否是素数;
2.主程序:
   1)输出(2,3)
   2)从3~999的所有奇数循环;
   3)如果这个数是素数,则判断这个数+2是不是素数,如果是,则输出(这个数,这个数+2).


程序LZ可以自己试试看.


这个定义的函数prime的思路是:
1.要判断一个数 n 是否是素数,可以从2~trunc(sqrt(n))循环,再看循环变量是否能整除 n ,如果都不能整除,则 n 是素数;
2.
function prime(n:longint):boolean;
var i:longint;
begin
 prime:=true;
 for i:=2 to trunc(sqrt(n)) do 
  if n mod i=0 then 
  begin 
    prime:=false;
    exit;
  end;
end;


这段代码不优化,不过由于是1000以内,还可以.

经过上机调试,测试通过,源代码见附件.