素數就是質數,就是只能被1整除,不能被其他數整除的數
java程序為:
網友寫的版本為:
//程序打印出從100到200的所有素數并求和;
void main()
{
cout<<"100-200之間的所有素數為:"<<endl; /*這是提示語句,沒有實際作用;*/
int k=0; //在主程序中定義了一個整型變量k,用來存放下載所有質數的和,默認值是0;
/*下面的是雙FOR循環,外面的循環從100開始,以步進為1,遞增到200,判斷這之間的每一個數是否為質數*/
for (int i=100;i<=200;i++)
{
int m=0;/*m是計數器,它的作用很重要,每循環一次,它要自動清零,做好下次計數的準備*/
/*內嵌了一個for循環,作用是用100到200之間的每一個數,從1一直除到它本身,比如第一個數100,從1開始除,一直
除到它本身*/
for (int a=1;a<=i;a++)
{
/*每除一次,如果余數為0,那么計數器m的值自增加1*/
if(i%a==0) m++;
}
/*經過了一次循環,結果出來了,如果m的值為2,這就說明了這個數只能被1和它本身整除,
這個就是質量數了.接著把這個數打印出來,后面還根了一個k+=i;語句,這是把每一個得出的質數
自加,并賦給k本身,以便求出這些質數的和*/
if(m==2){ cout<<i<<" ";k+=i;}
}
cout<<endl;
cout<<"這些素數的和為:"<<k<<endl;/*這里就得出了所有求得的質數的和了,也就是k最終的值*/
}
所有的質數為:101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199
所有素數總和為:3167
新聞熱點
疑難解答