高精度封裝Bignum

2022-05-31 12:57:11 字數 658 閱讀 1691

還沒有寫完,目前只實現了加,乘,且不能作用於負數

\(update\ in 20.4.8 新增了高精除低精ddiv函式,比較大小comp函式\)

#include using namespace std;

const int maxn=5009;

struct bignum

};bool comp(bignum a,bignum b)//比較函式

bignum operator / (bignum a,int b)//高精除以低精度

while(c.num[len-1]==0) len--;

c.len=len;

return c;

}bignum init(bignum &a,string s)

} return a;

}bignum hmull(bignum &a,bignum &b)//高精乘高精

bignum ddiv(bignum a,bignum b,bignum &c,int &f)//低精度除法

while(len>1&&c.num[len-1]==0) len--;

c.len=len;

}void print(bignum &a)

print(ans);

}

高精度除法(高精度除以高精度)

先貼乙個簡單的高精度除以單精度的 include include include using namespace std int main else ys ys 10 a i 0 while c i 0 i for int j i j 0 j printf d c j if ys printf d ...

高精度模板 c 類封裝

實還在poj上面寫過乙個浮點數的乘法和加法運算,但個別題目會用到,所以不加進去了.cpp view plain copy include include include include using namespace std define maxn 1000 struct hp hp operato...

高精度除高精度

演算法流程 第一步,讀入被除數 a 和 除數 b,判斷是否 a b,是則輸出 0 並結束演算法,否則令 answer 0 第二步,令餘數 remainder 0,令 i 從被除數最高位的下標開始 第三步,令 remainder remainder 10 a i 令 c 9 第四步,判斷是否 b c ...