如何判断是否为素数

void fun(int m,int *k,int ss[]){

int i,j,n=0;

for(i=4;i<m;i++){

for(j=2;j<i;j++)

     if(i%j==0) break;

     if(j<i) ss[n++]=i;

   *k=n;

}

}

求解!!

慕粉3630830
浏览 1349回答 2
2回答

噼喱啪啦

判断m是不是素数,如果m不能被 2 ~ 根号m间任一整数整除,m是素数所以判断应该这样来,这只是一种方法.做个循环让i从2开始+1,一直到m,每次判断,if(m%i==0),如果成立就保存m的值到wfor(int i=2;i<m;i++)   //m可以优化{    if(m%i==0)    w=i;}然后判断w的值,如果w的值在2~根号m直接,则代表m可以被2~根号m之间的某一个整数整除,则不是素数.反之则是素数.    
打开App,查看更多内容
随时随地看视频慕课网APP