《PPT5-9素数问题.pdf》由会员分享,可在线阅读,更多相关《PPT5-9素数问题.pdf(9页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、素数问题 求1到100以内的全部素数 。 接收任务 解题思路:判断该数据n(1100) 是否为素数。让n被i除(i的值从2变 到n-1),如果n能被2(n-1)中 任何一个整除,则表示n不是素数, 就不用再判断下去了,可以通过 break提前结束循环。 接收任务分析任务 接收任务分析任务提醒注意 由于n的取值范围为1100, 而判断n是否为素数,则要判断从 2n-1有没有n的因子,因此需要双 重循环,使用循环的嵌套来实现。 接收任务分析任务提醒注意绘流程图 break 输出n值 结束 n=100 i n i = 2 n % i=0 i = n i=i+1 N Y Y N N Y Y N n=n
2、+1 接收任务分析任务提醒注意绘流程图 break 输出n值 结束 n=100 i n i = 2 n % i=0 i = n i=i+1 N Y Y N N Y Y N n=n+1 核心代码 for(n = 2;n = 100 ;n+) for(i = 2; i n ;i+ ) if(n % i = 0) break; if(i=n) printf(%8d,n); i 22 n 2 2 接收任务分析任务提醒注意绘流程图 break 输出n值 结束 n=100 i n i = 2 n % i=0 i = n i=i+1 N Y Y N N Y Y N n=n+1 核心代码 for(n = 2;
3、n = 100 ;n+) for(i = 2; i n ;i+ ) if(n % i = 0) break; if(i=n) printf(%8d,n); i 22 n 2 3 3 3 接收任务分析任务提醒注意绘流程图 break 输出n值 结束 n=100 i n i = 2 n % i=0 i = n i=i+1 N Y Y N N Y Y N n=n+1 核心代码 for(n = 2;n = 100 ;n+) for(i = 2; i n ;i+ ) if(n % i = 0) break; if(i=n) printf(%8d,n); 完善运行 #include int main(int argc, char *argv) int n,i; return 0; 解决问题 同学们,本次课程你学会了吗?