例,阻筛选法戏100以内的素数 a筛选法就是从2到100中去掉 2,3…,9,10的倍数,剩下的就是 100以内的素数。 0为了解决这个问题,可先按程序 功能写出一个框架
例,用筛选法求100以内的素数 筛选法就是从2到100中去掉 2,3,…,9,10的倍数,剩下的就是 100以内的素数。 为了解决这个问题,可先按程序 功能写出一个框架
mi0){ 程序框架 建立2到100的数组4],其中A≡i 建立2到10的素数表B[,其中存放2 到10以内的素数 2 若A团=提]中任数的倍数,则 剔除4 3 输出4中所有没有被剔除的数;
main ( ) { //程序框架 建立2到100的数组A[ ],其中A[i]=i; -----------------------------------1 建立2到10的素数表 B[ ],其中存放2 到10以内的素数;-----------2 若A[i]=i是B[ ]中任一数的倍数,则 剔除A[i];---------------------3 输出A[ ]中所有没有被剔除的数; -----------------------------------4 }
main ot 建立2到100的数组4,其中A= for(i=2;i=100;计+)A团=i 建立2到10的数表B],其中存放2到 10以内的素数 B[l=2:B[2|=3;B3=5:B4=7 着A=提B中任一数的倍数,则剔 除4 for(j=1;j<=4:+) 检查4所有的数能否被B整除并将 能被整除的数从4中剔除:—31
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可没有被剔除,则输出之-4,1 a对框架中的局部再做细化,得到整个 程序
/*输出A[ ]中所有没有被剔除的数*/ for ( i = 2;i <= 100;i++ ) 若A[i]没有被剔除,则输出之 ---4.1 } 对框架中的局部再做细化,得到整个 程序
minot 建立2到100的数组4],其中4团d= ior(i=2:i<=100:计)A[=i 建立2到10的数表B],其中存放2到 10以内的数叶 B[l=2;B[2=3;B3}=5:B4=7 /若A=]中任数的倍数,则剔除 AG/ 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[ ]中剔除*/