大整數(高精度)加減法

2021-10-02 08:30:59 字數 1104 閱讀 9966

第一次寫,涉及大整數加減運算

先來看看加法,主要思想是逐位相加,進製加1

#include

#include

using

namespace std;

void

add(

int a,

int b[

],string str1, string str2)}}

void

print

(int

* a)

//輸出控制,多餘的0不要輸出}if

(flag ==

0)

cout <<

'0';

}int

main()

, b[

300]=;

//memset(a,0,sizeof(a)); //如此賦0也可以

//memset(b,0,sizeof(b));

cin >> str1 >> str2;

add(a,b,str1,str2)

;print

(a);

return0;

}

再來看看減法,預設第乙個數大於第二個數。

主要思想是逐位相減,不夠減借一。

#include

#include

using

namespace std;

void

sub(

int a,

int b[

], string str1, string str2)}}

void

print

(int

* a)

//輸出控制,多餘的0不要輸出}if

(flag ==0)

cout <<

'0';

}int

main()

, b[

300]=;

cin >> str1 >> str2;

sub(a, b, str1, str2)

;print

(a);

return0;

}

高精度加減法

題目 p1601 a b problem 高精 題目描述 高精度加法,相當於a b problem,不用考慮負數.輸入格式 分兩行輸入。a,b 10 500 輸出格式 輸出只有一行,代表a b的值 輸入輸出樣例 例一 輸入11 輸出2例二 輸入 1001 9099 輸出10100 include i...

大整數演算法(加減法)

現將兩個數分別計算出長度,然後用將長度較短的數為界,寫乙個for迴圈,將兩個數從末往前依次相加。這個迴圈結束後,將長度較大的陣列未計入計算的數進行運算 include includeint main 將陣列初始化為0 int l1,l2 l1 strlen a l2 strlen b if l1 l...

高精度 大整數減法

求兩個大的正整數相減的差。共2行,第1行是被減數a,第2行是減數b a b 每個大整數不超過200位,不會有多餘的前導零。一行,即所求的差。本題考察的是高精度減法。我們可以模擬減法的豎式計算過程從而實現高精度的計算。和高精度加法一樣,也是使用字串來進行輸入 儲存。豎式計算時,也是低位對齊,從低位向高...