試仿照三元組或複數的抽象資料型別寫出有理數抽象資料型別的描述 (有理數是其分子、分母均為整數且分母不為零的分數)。
有理數基本運算如下所示:
•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
用adt的抽象資料模型描述你的有理數資料型別:
adt rational
資料關係:
r1={} r2=
基本運算:
inittriplet(rational &t, elemtype v1, elemtype v2);
//操作結果:構造了有理數t,分子分母e1,e2的值分別被賦以引數v1,v2的值。
destroyrational(rational &t);
//操作結果:有理數t被銷毀。
get(rational t, int i, elemtype &e);
//操作結果:用e返回分子或分母的值 ,i為1是返回分子,i為2時返回分母
put(rational &t, int i, elemtype e);
//操作結果:改變分子或分母的值為e,i為1時改變分子,i為2時改變分母
addrational(rational &t1,rational &t2,rational &t3);
//操作結果:將t1,t2相加,結果存入t3
subrational(rational &t1,rational &t2,rational &t3);
//操作結果:將t1,t2相減,結果存入t3
mulrational(rational &t1,rational &t2,rational &t3);
//操作結果:將t1,t2相乘,結果存入t3
divrational(rational &t1,rational &t2,rational &t3);
//操作結果:將t1,t2相除,結果存入t3
}adt rational
標頭檔案:
函式:
部落格作業01 抽象資料型別
adt rational 資料關係 r 基本操作 說明 分母為0退出 說明 分母 t1分母 t2分母,分子 t1分子t2分母 t1分母t2分子 說明 分母 t1分母 t2分母,分子 t1分子t2分母 t1分母t2分子 說明 分母 t1分母 t2分母,分子 t1分子 t2分子 說明 分母 t1分子t2...
部落格作業01 抽象資料型別
adt rational 基本操作 做法 用new申請空間,將分子分母存入 做法 用delete釋放申請的空間 做法 經過使用者選擇,選擇返回某乙個有理數的分子或分母 做法 經過使用者選擇,修改某乙個有理數的分子或分母 做法 先通分再相加,最後化簡存入陣列 做法 先統分再相減,最後化簡存入陣列 做法...
部落格作業01 抽象資料型別
資料結構是相互之間存在一種或多種特定關係的資料元素的集合。它包括元素集合和元素間關係 為了更好地管理未來要面對的大量資料,就需要把它們按照一定的方式組織起來,來方便我們的操作,所以學習資料結構是十分重要的。學習元素間的關係,能更好地提公升演算法乃至程式的效能 只有我們認真學習,才能根據資料大小和型別...