写出大整数的ADT。
大整数是很大的整数,可以是一万位以内的任何数。通过分析大整数的特点,确定这种抽象数据类型的数据对象是什么,数据关系是什么,都有哪些基本操作,写成ADT形式。
ADT BigZ{
数据对象: D={ a_i | a_(i )≤10000, i=1,23,…,n, n≥0}
数据关系: R={ <a_i 〖,a〗(i+1)> | a(i+1)=a_i+1, 〖a_i,a〗_(i+1)∈D, i=1,2,3…,n, n≥0}
基本操作:
InitBigZ(&Z)
操作结果: 构造一个大整数Z。
DestoryBigZ(&Z)
初始条件: 大整数Z已存在。
操作结果: 销毁大整数Z。
AddBigZ(&Z1, &Z2)
初始条件: 大整数Z1,Z2已存在。
操作结果: 返回Z1,Z2的和。
DelBigZ(&Z1, &Z2)
初始条件: 大整数Z1,Z2已存在。
操作结果: 返回Z1,Z2的差。
MulBigZ(&Z1, &Z2)
初始条件: 大整数Z1,Z2已存在。
操作结果: 返回Z1,Z2的积。
DivBigZ(&Z1, &Z2)
初始条件: 大整数Z1,Z2已存在。
操作结果: 返回Z1,Z2的商。
BigZ++(&Z)
初始条件: 大整数Z已存在。
操作结果: 返回Z+1。
BigZ–(&Z1)
初始条件: 大整数Z已存在。
操作结果: 返回Z-1。
InitBigZs(&Zs)
操作结果: 构造一个大整数Z集。
SortBigZs(&Zs)
初始条件: 大整数集Zs已存在。
操作结果: 返回一个有序的大整数集Zs。
} ADT BigZ
大整数的ADT
最新推荐文章于 2022-06-07 23:08:26 发布