博客作业01-抽象数据类型
一.作业题目:
实验题目
试仿照三元组或复数的抽象数据类型写出有理数抽象数据类型的描述 (有理数是其分子、分母均为整数且分母不为零的分数)。
有理数基本运算如下所示:
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
二、博客作业要求:
1.作业内容
用ADT的抽象数据模型描述你的有理数数据类型。
ADT Rational {
数据对象:
D={e1,e2|e1,e2均为整数}
数据关系:
R={《e1,e2》|e1是有理数的分子,e2是有理数的分母}
基本运算:
InitRational(Rational &T,ElemType e1,ElemType e2)
构造有理数T,元素e1,e2分别被赋以分子、分母值
DestroyRational(Rational &T1,Rational &T2)
销毁有理数T
Get(Rational &T,int i,ElemType e)
用e(引用类型参数)返回有理数T的分子或分母,当入参i为1时返回分子, i为2是返回分母
Modify(Rational &T,int i,ElemType e)
将有理数T的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母
Add(Rational &T1,Rational &T2,Rational &T3)
有理数T1,T2相加,结果存入有理数T3
Subtract(Rational &T1,Rational &T2,Rational &T3)
有理数T1,T2相减,结果存入有理数T3
Multiply(Rational &T1,Rational &T2,Rational &T3)
有理数T1,T2相乘,结果存入有理数T3
Divide(Rational &T1,Rational &T2,Rational &T3)
有理数T1,T2相除,结果存入有理数T3
} ADT Rational
2.数据结构、函数说明
截图展示你的头文件。头文件代码务必加入注释。
3.代码实现说明
-
1.构造有理数T
-
2.销毁有理数T
-
3.返回有理数T的分子或分母
-
4.将有理数T的分子或分母更改为e
-
5.有理数T1,T2相加
-
6.有理数T1,T2相减
-
7.有理数T1,T2相乘
-
8.有理数T1,T2相除
-
9.约分
4.代码互评
5.结果展示
-
1.两个正有理数
-
2.分母为0
-
3.一个负有理数
-
4.两个负有理数
-
查询
-
修改
6.总结
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。
ADT是指抽象数据的组织和与之相关的操作。可以看作是数据的逻辑结构及其在逻辑结构上定义的操作。抽象数据类型可以看作是描述问题的模型,它独立于具体实现。它的优点是将数据和操作封装在一起,使得用户程序只能通过在ADT里定义的某些操作来访问其中的数据,从而实现了信息隐藏。