Data_Structure01-绪论作业
Posted 郭胤鑫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Data_Structure01-绪论作业相关的知识,希望对你有一定的参考价值。
仿照三元组或复数的抽象数据类型写出有理数抽象数据类型的描述 (有理数是其分子、分母均为整数且分母不为零的分数)。
有理数基本运算:
- 构造有理数T,元素e1,e2分别被赋以分子、分母值
- 销毁有理数T
- 用e(引用类型参数)返回有理数T的分子或分母,当入参i为1时返回分子, i为2是返回分母。
- 将有理数T的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母
- 有理数T1,T2相加,结果存入有理数T3
- 有理数T1,T2相减,结果存入有理数T3
- 有理数T1,T2相乘,结果存入有理数T3
- 有理数T1,T2相除,结果存入有理数T3
1.ADT抽象数据模型描述有理数数据类型
2.数据结构、函数说明
头文件:
函数:
3.代码实现说明
(1)构造和销毁一个有理数
(2)
- 用e(引用类型参数)返回有理数T的分子或分母,当入参i为1时返回分子, i为2是返回分母。
- 将有理数T的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母。
(3)加减乘除
(4)辗转相除求最大公约数
5.总结
根据数据结构中的逻辑类型和储存类型,我选择了使用逻辑类型的线性类型。先定义一个有理数作为int类型的指针,再由构建函数开辟一个长度为2的内存空间来储存分子分母,再把有理数作为一个类型进行操作。C++是面向对象的语言,本题中,我将有理数这个概念实例化,先定义了“概念”,而T1,T2,T3是几个特例,由泛型转为特性,在编程中就能避免很多问题。
在程序编写中,要把空泛的概念实体化,用我熟知的知识去描述。
6.运行截图
1,正常操作
2,分母小于等于零
以上是关于Data_Structure01-绪论作业的主要内容,如果未能解决你的问题,请参考以下文章