- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【例5.13】 把100到150之间的不能被4整除的数输出,并要求一行输出8个数。 #include ”stdio.h” main() { int n, i=0; for (n=100; n=150; n++) { if (n%4==0) continue; printf(”%4d”, n); i++; if (i%8==0) printf (”\n”); } } 五、常用算法 1、枚举法(穷举法) “笨人之法”: 把所有可能的情况一一测试,筛选出符合条件的各种结果进行输出。 【例一】百元买百鸡:用一百元钱买一百只鸡。已知公鸡5元/只,母鸡3元/只,小鸡1元/3只。 分析: 这是个不定方程——三元一次方程组问题(三个变量,两个方程) x+y+z=100 5x+3y+z/3=100 设公鸡为x只,母鸡为y只,小鸡为z只。 百元买百鸡问题分析 main() { int x,y,z; for (x=0;x=100;x++) for (y=0;y=100;y++) for (z=0;z=100;z++) { if (x+y+z==100 5*x+3*y+z/3.0==100 ) printf(cocks=%d,hens=%d,chickens=%d\n,x,y,z); } } 结果:x=0,y=25,z=75 x=4,y=18,z=78 x=8,y=11,z=81 x=12,y=4,z=84 【讨论 此为“最笨”之法——要进行101×101×101= 1030301次(100多百次)运算。 百元买百鸡问题分析 main() { int x,y,z; for (x=0;x=100;x++) for (y=0;y=100;y++) { z=100-x-y; if (5*x+3*y+z/3.0==100 ) printf(“cocks=%d,hens=%d,chickens=%d\n,x,y,z); } } 【讨论】 令z=100-x-y 只进行101×101= 10201 次运算(前者的1%) 取x=19,y=33 只进行20×34= 680 次运算(第1种运算的6.7%) 【例二】雨水淋湿了算术书的一道题,8个数字只 能看清3个,第一个数字虽然看不清,但可看出不是1。编程求其余数字是什么? [ □×(□3+□)]2 = 8□□9 分析 设分别用A、B、C、D、E五个变量表示自左到右五个未知的数字。其中A的取值范围为2~9,其余取值范围为0~9。条件表达式即为给定算式。 main() { int A,B,C,D,E; for (A=2;A=9;A++) for (B=0;B=9;B++) for (C=0;C=9;C++) for (D=0;D=9;D++) for (E=0;E=9;E++) if (A*(B*10+3+C)*A*(B*10+3+C)==8009+D*100+E*10) printf(“%2d%2d%2d%2d%2d\n”,A,B,C,D,E); } 结果:3 2 8 6 4 【例二】雨水淋湿了算术书的一道题,8个数字只 能看清3个,第一个数字虽然看不清,但可看出不是1。编程求其余数字是什么? [ □×(□3+□)]2 = 8□□9 【例三】 求100~200之间不能被3整除也不能被7整除的数。 分析:求某区间内符合某一要求的数,可用一个变量“穷举”。所以可用一个独立变量x,取值范围100~200。 for (x=100;x=200;x++) if (x%3!=0x%7!=0) printf(“x=%d\n”,x); 如果是求指定条件的奇数呢? 如果是求指定条件的偶数呢? x=101;x=200;x=x+2 x=100;x=200;x=x+2 2、归纳法(递推法、迭代法) “智人之法” : 通过分析归纳,找出从变量旧值出发求新值的规律。 五、常用算法 【例一】 编程求∑i =1+2+3+4…+99+100 (i=0~100) 分析 i=0 S0=
您可能关注的文档
最近下载
- 国标图集示例-07J306-窗井、设备吊装口、排水沟、集水坑.pdf VIP
- 4.1陆地水体及其相互关系教案--鲁教版(2019)高中地理选择性必修一.docx VIP
- 《数据标注工程——概念、方法、工具与案例》教学课件451.pptx VIP
- 2024新人教版物理八年级上册《第三章 物态变化》大单元整体教学设计.docx
- 高速公路形考任务,2021年国开电大50223《高速公路》形考任务1答案.doc VIP
- 六年级上册心理健康课件《5.对愤怒说“暂停”》.pptx VIP
- 焊接质量检验标准.pdf VIP
- 原版英语小说《夏洛的网CharlottesWeb》-人教版[整理]--第十三章.pdf VIP
- 人教版(2012)美术五年级上册快乐刮画(课件).pptx VIP
- 体谅模式研究.doc VIP
文档评论(0)