归纳算法:硬币翻转

归纳算法:硬币翻转

ID:40837179

大小:109.50 KB

页数:4页

时间:2019-08-08

归纳算法:硬币翻转_第1页
归纳算法:硬币翻转_第2页
归纳算法:硬币翻转_第3页
归纳算法:硬币翻转_第4页
资源描述:

《归纳算法:硬币翻转》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、福建工程学院计算机与信息科学系实验报告2012–2013学年第一学期任课老师:章静课程名称C语言结构化编程班级计算机类1105班座号3110307518姓名裴和平实验题目分治算法设计技术的应用实验时间实验开始日期:2012.12.24报告提交日期:2012.12.28实验目的、要求1、有N个硬币(N为偶数)正面朝上排成一排,每次将N-1个硬币翻过来放在原位置,不断地重复上述过程,直到最后全部硬币翻成反面朝上为止。设计程序让计算机把翻币的最简过程以及翻币次数输出(用*表示正面,O表示反面)2、有N个硬币(N为奇数)正面朝上排成一排,每次将N-2个硬币翻过来放在原位置,不断地重复

2、上述过程,直到最后全部硬币翻成反面朝上为止。设计程序让计算机把翻币的最简过程以及翻币次数输出(用*表示正面,O表示反面)实验步骤与内容按如下顺序写:1、主要设计思想;对于任意的硬币x,设翻转n(x)(奇数)次,则除x外其他N-1个硬币要一起翻转n-n(x)次(奇数),n-n(x)=1,3,5,…,n-1.考虑n-n(x)=3,5,…,n-1的情况,将N-1个硬币翻转3次或者更多次得到的结果与翻转一次的结果完全相同,且比翻转一次更麻烦,不是最简单过程,因此,只有n-n(x)=1才满足要求,即n(x)=n-1,又由于x的任意性,可知,每个硬币的翻转次数都是n-1次,因此总的翻转次

3、数为N*(n-1),根据n(N-1)=N*(n-1)可得:N*n-n=N*n-N得n=N.即共翻转N次,其中每个硬币翻转次数为N-1。考虑到所有硬币翻转次数相同,因此可以将其看成一个环,从某个位置开始,先翻转N-1个,再前进一步,翻转N-1个,直到完成翻转N次。2、主要数据结构及其解释intTurncoin1(intnum,ints[]);//奇数n-2intTurncoin2(intnum,ints[]);//偶数n-13、模块关系图;4Main主函数Turncoin1()函数Turncoin2()函数1、流程图2、所有函数的简要说明Main()主函数中申请数组s,并给数组

4、中成员都赋值为1,设为正面;由用户输入的硬币数调用两函数。intTurncoin2(intnum,ints[])//翻硬币(偶);该函数利用双循环4,外循环i控制不翻转的硬币,j控制将数组值取反,并按正反面输出*或0;i前进一位,j就循环一趟。intTurncoin1(intnum,ints[]);//奇数n-2;做法同上试验过程记录记录试验中遇到的困难及解决方法;奇数个硬币翻转时,因为是i-2个翻转,所以弄了比较久。实验结果记录以及与预期结果比较以及分析记录每次实验结果以及分析情况4总结以及心得体会刚好前一题目做分而治之,对多种排序进行了好好的比较,所以做这题时马上就想到使

5、用双循环,所以感觉题目还是要自己多练练些,见的多了就能找出方便的方法。指导老师评阅意见指导老师:年月日4

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。