c++,怎麼做大數除法,字元陣列

如題該怎麼做

我乘法已經寫出來了

基本上速度不用一秒鐘

乘法的話

但是除法不會做

可以教教我嗎

利用加法、減法、乘法??

已更新項目:

我做出來了

我是用這種方法

假如 25000 / 50

50補0,補到 25000 的位數小一位,就是5000

這樣25000-5000

減到 current number 位數小於或等於 5000 的位數

在重複做一樣的動作

這樣做有問題嗎

我跑是沒問題

大概兩三秒跑出結果~

2 個已更新項目:

還有位數相等的時候

直接連減

反正再慢迴圈也最多九次

4 個解答

評分
  • 10 年前
    最佳解答

    http://www.badongo.com/file/25293277

    基本上就是模擬長除法的過程

    速度絕對是一流的,但是這個方法較麻煩

    你也可以選擇另一位的方法,用減法做除法

    方法比較簡單,但是速度慢

    建議還是練習長除法,就算現在迴避它以後還是會面對

    2011-04-09 23:33:45 補充:

    跑起來沒問題,應該就可以,不然再多用幾組資料測試

    參考資料: 我自己寫的
  • re
    Lv 4
    10 年前

    考慮到速度的話還是得做長除法…

  • 10 年前

    請問有要有包含小數嗎?還是輸出只列到整數?

  • 10 年前

    除法 = 連減

    商數 -> 減的次數

    如果你減法已經實作了

    只要減到被除數小於除數

    去算你呼叫了幾次減法

    那個就是商數了

    另外也可以把兩個陣列拿來作長除法...只是感覺會很囉唆而已

    參考資料: 自己
還有問題?馬上發問,尋求解答。