- 43
- 0
- 约8.39千字
- 约 49页
- 2015-09-24 发布于重庆
- 举报
递归程序设计
特殊情况处理 一些特殊情况需要处理 1)m和n都为0需特殊处理。令函数返回值0; 2)若m和n中一个为0,gcd是另一个数。函数的返回值正确。也可直接判断处理; 3)m、n为负时函数返回1,可能不对。 应在循环前加语句 if (m == 0 n == 0) return 0; if (m == 0) return n; if (n == 0) return m; if (m 0) m = -m; if (n 0) n = -n; 可能方式2 换个思路 令k从某个恰当的大数开始递减,找到的第一个公约数就是最大公约数。 k初值可取m和n中小的一个。 结束条件 k值达到1或找到了公约数。1总是公约数。 程序主要部分可写为: for (k = (m n ? n : m); //把k设为n的较小者 m % k != 0 || n % k != 0; k--) ; /* 空循环体 */ return k; /*循环结束时k是最大公约数 */ 过程示例 m n k m % k != 0 || n % k != 0 d 20 8 8 是 ? 7 是 ? 6 是 ? 5 是 ? 4 否 4 两种方式比较 本方法比前一方法简单一些。 两种方法的共同点是重复测试。 这类方法的缺点是效率较低,参数大时循环次数很多。 解法2 辗转相除法 求GCD有著名的欧
您可能关注的文档
- 虚拟网络映射问题研究综述.pdf
- 虚拟语气在条件状语从句中的用法(if条件句).ppt
- 蛇形机器人一种基于serpenoid曲线的蠕动步态.pdf
- 蛋白质二硫键异构酶家族的结构与功能.pdf
- 蜗轮蜗杆传动优化设计研究_刘洁.pdf
- 蜗轮减速机效率之研究.pdf
- 融合GPS与Wi_Fi的室内外无缝定位原型系统研制.pdf
- 融_青岛理工大学黄岛新校区规划设计和实践.pdf
- 蠕虫L_variegatus在污泥减量中的作用与应用前景分析.pdf
- 螺旋CT血管成像对副肾动脉分析及临床意义.pdf
- ORing工业网络解决方案.pdf
- 如何使用XMind与制作3:4比例美观图片.pdf
- 重症医学相关精神障碍药物合理使用专家共识解读.pptx
- 重症医学专业医疗质量控制指标(2024年版).pptx
- 重症医学专业医疗质量控制指标(2024年版)解读.pptx
- “鸭力全消 喜乐出圈”商场购物中心五一玩梗出圈季活动方案.pptx
- 商场购物中心大悦城(潮π广场)打造计划美陈升级改造方案.pptx
- MUSIC FESTIVAL音乐节线上整合营销传播运营策划方案.pptx
- 26HR-162:企业招聘分析:招聘配置工作总结分析报告.pdf
- 白酒国窖1573冰·JOYS夏季交响音乐品鉴私宴会营销活动方案.pptx
原创力文档

文档评论(0)