zoukankan      html  css  js  c++  java
  • Data_Structure01-绪论作业

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

        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抽象数据模型描述有理数数据类型

    2.数据结构、函数说明

    头文件:

    函数:

    3.代码实现说明

    (1)构造和销毁一个有理数

    (2)

    1. 用e(引用类型参数)返回有理数T的分子或分母,当入参i为1时返回分子, i为2是返回分母。
    2. 将有理数T的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母。

    (3)加减乘除

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

    5.总结

    根据数据结构中的逻辑类型和储存类型,我选择了使用逻辑类型的线性类型。先定义一个有理数作为int类型的指针,再由构建函数开辟一个长度为2的内存空间来储存分子分母,再把有理数作为一个类型进行操作。C++是面向对象的语言,本题中,我将有理数这个概念实例化,先定义了“概念”,而T1,T2,T3是几个特例,由泛型转为特性,在编程中就能避免很多问题。

    在程序编写中,要把空泛的概念实体化,用我熟知的知识去描述。

    6.运行截图

    1,正常操作

    2,分母小于等于零

  • 相关阅读:
    Rotate List
    Spiral Matrix II
    Jump Game
    Maximum Subarray
    Pow(x, n)
    Anagrams
    Permutations
    unity 相机的问题
    NGUI 学习
    空间数据库1
  • 原文地址:https://www.cnblogs.com/3nodisnoable/p/8521868.html
Copyright © 2011-2022 走看看