数据结构实验模板.doc_第1页
数据结构实验模板.doc_第2页
数据结构实验模板.doc_第3页
数据结构实验模板.doc_第4页
数据结构实验模板.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

HUNAN UNIVERSITY课程实习报告 题 目最大公因数学生姓名学生学号专业班级指导老师完成 日 期 一、需求分析1 本程序要求采用欧几里德算法,计算并输出用户输入的两个正整数的最大公因数。2 两个正整数由用户通过键盘输入,其取值范围为(0, 216)。不对非法输入做处理,即假设输入都是合法的。3 在Dos界面输出最大公因数。4 测试数据输入7591035输出69二、概要设计抽象数据类型为实现上述程序的功能,应以整数存储用户的输入,以及计算出的结果。算法的基本思想根据题目要求,采用欧几里德算法计算两个正整数的最大公因数。该算法的基本思想是辗转相除法。设两数为a、b(ba),求它们最大公约数(a、b)的步骤如下:1. a b,令r为所得余数(0rb)若 r = 0,算法结束;b 即为答案。2. 互换:置 ab,br,并返回第一步。程序的流程程序由三个模块组成:(1) 输入模块:完成两个正整数的输入,存入变量a和b中。(2) 计算模块:设计一个最大公因数函数,elemtype gcd (elemtype M, elemtype N),两个整数作为函数参数,计算结果通过函数名返回。(3) 输出模块:屏幕上显示计算的最大公因数。三、详细设计物理数据类型题目要求输入的正整数的取值范围在(0, 216)之间,为了能够存储,采用C语言中的长整型定义变量。typedef long elemtype算法的具体步骤欧几里德算法计算两个正整数的最大公因数的算法流程图如下算法的时空分析算法的运行时间依赖与确定余数序列有多长。可以证明,在两次迭代后,余数最多是原始值的一半。则迭代次数是2log NO(log N)。输入和输出的格式输入本程序可以求取两个正整数的最大公因数/提示请输入第一个正整数(注意输入的数要小于2100000000):/提示等待输入请输入第二个正整数(注意输入的数要小于2100000000):/提示等待输入输出/提示两者的最大公因数是:/输出结果的位置四、调试分析略。五、测试结果输入5015输出5输入1989 1590 输出3六、用户使用说明(可选)1、本程序的运行环境为DOS操作系统,执行文件为gcd.exe2、运行程序时提示输入两个整数本程序可以求取两个正整数的最大公因数请输入第一个正整数(注意输入的数要小于2100000000):请输入第二个正整数(注意输入的数要小于2100000000)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论