算法案例1孙子问题.ppt

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
算法案例1孙子问题.ppt

* 流 程 图 算法的描述 算法 自然语言 顺序结构 条件结构 循环结构 顺序结构 条件结构 循环结构 输 语句 伪 代 码 循环语句 赋值语句 条件语句 入出 中国剩余定理 (孙子问题) “孙子问题”记载在《孙子算经》中,原文是:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?” 孙子问题的现代数学描述 “孙子问题”相当于求关于x,y,z的方程组 的正整数解。 解题分析 (1)如何依次检索正整数? (采用循环结构) (2)该循环何时结束? (找到满足条件的整数为止) (3)一个正整数m什么时候满足方程? (m同时满足被3除余2,被5除余3,被7除余2) 引入记号:m被3除余2用符号表示为Mod(m,3)=2;m被5除余3用符号表示为Mod(m,5)=3;m被7除余3用符号表示为Mod(m,7)=2 流程图 伪代码 m ? 2 While Mod (m,3)≠2 or Mod (m,5)≠3 or Mod (m,7)≠2 m ? m+1 End While Print m 例1 有3个连续的自然数,其中最小的能被15整除,中间的能被17整除,最大的能被19整除,求满足要求的一组三个连续的自然数。 分析:本题的其实就是求下面不定方程组的正整数解. 算法 S1 取m=1; S2 当m不能被15整除,或m+1不能被17整除,或m +2不能被19整除,则m?m+1,转S2;否则输 出m,m+1,m+2,算法结束. 流程图 m ? 1 While Mod (m,15)≠2_ or Mod (m+1,17)≠0_ orMod (m+2,19)≠0 m ? m+1 End While Print m,m+1,m+2 伪代码 思考:以下伪代码是否可行? k?1 a?15k While Mod(a+1,17)≠0 or_ Mod(a+2,19)≠0 k?k+1 a?15k End While Print a,a+1,a+2 本课小结 1.韩信点兵-孙子问题的求解算法; 2.利用循环结构实现整数的搜索; 3.利用逻辑运算符Or实现多条件的判断。 *

文档评论(0)

cjlfjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档