判断一个数是不是质数的算法,流程图

如题所述

两个算法:
1。输入一个数N
flag=0;
for(int i=2;i<N;i++)
for(int j=2;j<N/i+1;j++)
if(N==i*j) printf("不是质数");flag=1;break;
...
if(flag==0) printf("是质数");
...

2.输入一个数N
flag=0;
for(int i=2;i<N;i++)
if(int(N/i)==N/i && int(N/i)!=1) printf("不是质数");flag=1;break;
...
if(flag==0); printf(...);
...

第一个用双循环举出2到N-1中所有数的乘积,等于N则不是质数;
第二个用除法,N除以2到N-1中所有的数,结果为整数则不是质数(N/2=1的情况除外);
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-04-25
这么简单的东西只要懂定义就能做,又没有算法性能要求,for一个i=2~n-1然后判断(n/i)*i==n的真假,真就跳出循环。
最后看i是不是等于n如果等于n就是素数不等于就不是。
相似回答