码迷,mamicode.com
首页 > 其他好文 > 详细

Data-Structure01-绪论

时间:2018-03-06 23:28:17      阅读:333      评论:0      收藏:0      [点我收藏+]

标签:图片   了解   代码   作业   add   计算   info   分享   返回   

一、作业要求

    仿照三元组或复数的抽象数据类型写出有理数抽象数据类型的描述 (有理数是其分子、分母均为整数且分母不为零的分数)。

有理数基本运算:

  1. 构造有理数T,元素e1,e2分别被赋以分子、分母值
  2. 销毁有理数T
  3. 用e(引用类型参数)返回有理数T的分子或分母,当入参i为1时返回分子, i为2是返回分母。
  4. 将有理数T的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母
  5. 有理数T1,T2相加,结果存入有理数T3
  6. 有理数T1,T2相减,结果存入有理数T3
  7. 有理数T1,T2相乘,结果存入有理数T3
  8. 有理数T1,T2相除,结果存入有理数T3
    实验要求:
  9. 抽象数据类型名为Rational。
  10. 有理数分母不能为负数或者0,类似输入请提示重输入。
  11. 数据对象和数据运算的表示与数据操作的实现分离。表示用头文件完成,实现用CPP文件完成。Main.cpp文件实现数据输入输出。
  12. 数据输入输出格式参考如下:.........  

二、作业实验

1.用抽象数据类型写出有理数抽象数据类型的描述

ADT Rational{
    数据对象:D = {T1,T2,T3|T1,T2,T3为有理数}
    数据关系:R = {<T1,T2>,<T2,T3>}
    基本操作:
        CreateRational(&T,x1,x2) 
            操作结果:创造有理数T。
        DestoryRational(&T)
            操作结果:销毁有理数T。
        AddRational(&T1,&T2,&T3)
            操作结果:将T1,T2相加,结果存入T3
        MinusRationa(&T1,&T2,&T3)
            操作结果:将T1,T2相减,结果存入T3
        MultiplyRational(T1,T2,&T3)
            操作结果:将T1,T2相乘,结果存入T3
        DivideRational(T1,T2,&T3)
            操作结果:将T1,T2相除,结果存入T3
} ADT Rational

2.头文件

技术分享图片

3.函数说明

技术分享图片

4.代码实现

(1)构造有理数

技术分享图片

(2)销毁有理数

技术分享图片

(3)取得有理数的分子或分母的值

技术分享图片

(4)改变有理数分子或分母的值

技术分享图片

(5)相加

技术分享图片

(6)相减

技术分享图片

(7)相乘

技术分享图片

(8)相除

技术分享图片

(9)辗转相除求最大公约数

技术分享图片

 

 三、结果展示

(1)正常情况

技术分享图片

(2)两个有理数相同

技术分享图片

(3)存在输入错误,需要重新输入的情况

技术分享图片

(4)分子为零

技术分享图片

(5)有理数为负数

技术分享图片

三、总结

  通过这次作业,我对抽象数据类型和数据结构有了更深的了解。以下是我的理解:

  数据结构就是指按一定的逻辑结构组成的一批数据,使用某种存储结构将这批数据存储于计算机中,并在这些数据上定义了一个运算集合。

  抽象数据类型和数据类型实质上是同一种概念。

 

  

 

Data-Structure01-绪论

标签:图片   了解   代码   作业   add   计算   info   分享   返回   

原文地址:https://www.cnblogs.com/chenyutin/p/8515701.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!