這個程式要大家寫的東西還是很熟悉的應用, 就是用一個類別來表示整數的物件, 這個類別的物件需要能夠處理到十進位 100 位數的整數, 這樣子的類別在金融系統中處理鉅額的款項時需要用到, 這樣子的類別在近代密碼學裡也是一個基礎的工具。一個很大的整數不能夠用 C/C++ 裡的 int 或是 long 或是 double 型態來表示, 因為 int 或是 long 型態有上限, 大約到達 10 的 9 次方左右, 不能夠表示更大的數字了, 而 double 類型雖然可以表示到 10 的 300 次方的數字, 但是在表示這樣的數字時卻有大約 10 的 285 次方的誤差, 這樣的誤差在應用程式中是沒有辦法容忍的。
因此你必須設計自己的資料結構來表示一個大的整數, 例如用字元陣列或是整數陣列來表示, 每一個元素儲存十進位的一個位數, 請你用一個類別把你所喜歡的實作方法包裝起來, 並且實作 operator overloading, 實作一些你所熟悉的整數加減乘除的動作, 讓一些基本的運算可以像是在使用基本型態時一樣地使用。
請選擇你希望測試的運算 1. 由字元陣列建構 2. 由整數建構 3. binary + 4. binary - 5. binary * 6. unary prefix ++ 7. unary postfix ++ 8. 完整單元測試 9. 結束 3 請輸入第一個數字 12345678901234567890 請輸入第二個數字 -23084753209485940893245893245 結果為 -23084753197140261992011325355 請選擇你希望測試的運算 1. 由字元陣列建構 2. 由整數建構 3. binary + 4. binary - 5. binary * 6. unary prefix ++ 7. unary postfix ++ 8. 完整單元測試 9. 結束 1 請輸入數字 0010834589324583253 建構出來的數字為 10834589324583253 請選擇你希望測試的運算 1. 由字元陣列建構 2. 由整數建構 3. binary + 4. binary - 5. binary * 6. unary prefix ++ 7. unary postfix ++ 8. 完整單元測試 9. 結束 9
回
C++ 程式設計課程
首頁
製作日期: 05/08/2003
by 丁培毅 (Pei-yih Ting)
E-mail: [email protected]
TEL: 02 24622192x6615
海洋大學
理工學院
資訊科學系