高精度 學習記錄

2021-10-11 18:07:41 字數 1544 閱讀 4234

簡單高精度

注意,本篇高精度乘法只適用於高精度乘低精度,高精度除法僅適用於高精度除以低精度

*高精度全(zsh)

#include

#include

#include

using

namespace std;

vector<

int> a,b;

//加法

void

add_out

(vector<

int> c)

vector<

int>

add(string a,string b)

if(t)c.

push_back(1

);return c;

}//減法

bool

sub_cmp

(vector<

int>

&a,vector<

int>

&b)return

true;}

void

sub_out

(vector<

int>

&c)else

}vector<

int>

sub_1

(vector<

int>

&a,vector<

int>

&b)while

(c.size()

>

1&& c.

back()

==0)c.pop_back()

;return c;

}vector<

int>

sub(string a,string b)

else

}//乘法

void

mul_out

(vector<

int> c)

vector<

int>

mul(string &a,

int b)

if(t)c.

push_back

(t);

while

(c.size()

>

1&& c.

back()

==0)c.pop_back()

;return c;

}//除法

void

div_out

(vector<

int>

&c)vector<

int>

div(string &a,

int b,

int&r)

reverse

(c.begin()

,c.end()

);while

(c.size()

>

1&& c.

back()

==0)c.pop_back()

;return c;

}int

main()

內建函式:

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

先貼乙個簡單的高精度除以單精度的 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 ...

高精度除高精度

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

高精度除以高精度

原 題 高精除以高精,求它們的商和餘數。演算法分析 高精除以高精是用減法模擬除法,對被除數的每一位都減去除數,一直減到當前位置的數字 包括前面的餘數 小於除數 由於每一位的數字小於10,所以對於每一位最多進行10次計算 代 碼 include include include using namesp...