Data_Structure-绪论作业

 

 

一.作业题目

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

    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 3 //T1的分子、分母
      1 2 //T2的分子、分母
      ** 输出:**
          5 6  //两个有理数相加
          -1 6  //两个有理数相减
           1 6  //两个有理数相乘
           2 3  //两个有理数相除
    13. 程序应对异常输入或者出错必要处理和提示,比如提示:“分数是否需要约分等”

      二、博客作业要求:

      编程前请务必学习c++基础,请参见“参考资料”压缩包中的C++基础(精简版).ppt

      1.作业内容

      用ADT的抽象数据模型描述你的有理数数据类型。如:
      图片:
      figure 01.TripletADT.png

      2.数据结构、函数说明

      1. 头文件

         

      2. 函数

         

      3. 函数功能
        1. 函数构造   

           

        2. 有理数的加法                                                    

           

        3.  有理数的减法                                      
        4. 有理数的乘法                                                  

        5. 有理数的除法                                                       

        6.  约分                                  

          3.运行结果展示

          1. 样例                                                                    

             

          2. 分母为0                                                                         
          3. 一正一负                                                                     

             

          4. 两个都为负                                                                                 
          5. 两个相等                                                                                     

             

          6. 互为相反数                                                                                 

            4.总结

             

            1. 从c到c++的过度,对c++有了一点理解。
            2. 对抽象数据也有了深刻的理解,并且借助抽象数据类型可以使我们更容易理清思路,建立基本结构,以及函数之间的关系。
posted @ 2018-03-06 11:41  小呆俊  阅读(168)  评论(2编辑  收藏  举报
/*标题彩虹滚动字*/ #blogTitle h1 a{ background-image: -webkit-gradient( linear, left top, right top, color-stop(0, #f22), color-stop(0.15, #f2f), color-stop(0.3, #22f), color-stop(0.45, #2ff), color-stop(0.6, #2f2), color-stop(0.75, #2f2), color-stop(0.9, #ff2), color-stop(1, #f22) ); color: transparent;-webkit-text-fill-color: transparent; -webkit-background-clip: text; -webkit-background-size: 200% 100%; -webkit-animation: maskedAnimation 2s infinite linear; -webkit-background-clip: text;-moz-background-clip: text;-ms-background-clip: text /*文字颜色变化*/ @keyframes maskedAnimation { 0% { background-position: 0 0; } 100% { background-pos