例,用筛遄求100以内的意数 a筛选法就是从2到100中去掉 2,3,9,10的倍数,剩下的就是 100以内的素数。 0为了解决这个问题,可先线程序 功能写出一个框架
例,用筛选法求100以内的素数 筛选法就是从2到100中去掉 2,3,…,9,10的倍数,剩下的就是 100以内的素数。 为了解决这个问题,可先按程序 功能写出一个框架
maine 程序框架 建立到100的数组A[],其中A[=i 建立到10的素数表BI],其中存放2 到10以内的素数 2 若A=误B中任一数的倍数,则 剔除A 3 输出A]中所有没有被剔除的数
main ( ) { //程序框架 建立2到100的数组A[ ],其中A[i]=i; -----------------------------------1 建立2到10的素数表 B[ ],其中存放2 到10以内的素数;-----------2 若A[i]=i是B[ ]中任一数的倍数,则 剔除A[i];---------------------3 输出A[ ]中所有没有被剔除的数; -----------------------------------4 }
minot 八建立2到100的数组A,其中A[=/ for(i=2:i<100;计+)A[=i 建立2到10的意数表B],其中存放2到 10以内的素数 Bl2:B[2=3;B3]=5:B4=7 着4=B中任一数的倍数,则剔 除A[ for(=1:j=4:+) 检查4所有的数能否被B整除并将 能被整除的数从4中剔除 3.1
main ( ) { /*建立2到100的数组A[ ],其中A[i]=i*/ for ( i = 2;i <= 100;i++ ) A[i] = i; /* 建立2到10的素数表B[ ],其中存放2到 10以内的素数*/ B[1]= 2;B[2]= 3;B[3]= 5;B[4]= 7; /*若A[i]=i是B[ ]中任一数的倍数,则剔 除A[i]*/ for ( j = 1;j <= 4;j++ ) 检查A[ ]所有的数能否被B[j]整除并将 能被整除的数从A[ ]中剔除; -----3.1
/输出A中所有没有被剔除的数中 for(i=2;i<=100;计+) 若A没有被剔除,则输出之-41 a对框架中的局部再做细化,得到整个 程序
/*输出A[ ]中所有没有被剔除的数*/ for ( i = 2;i <= 100;i++ ) 若A[i]没有被剔除,则输出之 ---4.1 } 对框架中的局部再做细化,得到整个 程序
maino& 建立2到100的数组4,其中A= for(i=2:i<100;计+)A=i 建立2到10的数表B],其中存放到 10以内的素数 Bl2:B[2=3;B3]=5:B4]=7 /着A[=提B中任一数的倍数,则剔除 * for(=1:j<=4:产+) 检4所有的数能否被B整除并将能 被整除的数从4中剔除*
main ( ) { /*建立2到100的数组A[ ],其中A[i]=i*/ for ( i = 2;i <= 100;i++ ) A[i] = i; /* 建立2到10的素数表B[ ],其中存放2到 10以内的素数*/ B[1]= 2;B[2]= 3;B[3]= 5;B[4]= 7; /*若A[i]=i是B[ ]中任一数的倍数,则剔除 A[i]*/ for ( j = 1;j <= 4;j++ ) /*检查A[ ]所有的数能否被B[j]整除并将能 被整除的数从A[ ]中剔除*/