九度OJ 1137 浮點數加法

2021-07-26 22:47:39 字數 1233 閱讀 2423

本題本來想採用寫好的bigint模板直接套用,後來發現用高精度整數相當麻煩,於是直接使用字串加法器的方法進行重寫。

debug過程:

見**注釋。

題目描述:求2個浮點數相加的和

題目中輸入輸出中出現浮點數都有如下的形式:

p1p2...pi.q1q2...qj

對於整數部分,p1p2...pi是乙個非負整數

對於小數部分,qj不等於0

輸入:對於每組案例,第1行是測試資料的組數n,每組測試資料佔2行,分別是兩個加數。

每組測試資料之間有乙個空行,每行資料不超過100個字元

輸出:每組案例是n行,每組測試資料有一行輸出是相應的和。

輸出保證一定是乙個小數部分不為0的浮點數

樣例輸入:

2

0.111111111111111111111111111111

0.111111111111111111111111111111

10000000.655555555555555555555555555555

1.444444444444444444444444444445

樣例輸出:

0.222222222222222222222222222222

10000002.1

2023年北京大學軟體所計算機研究生機試真題

答疑:

#include #include #define maxsize 1000

using namespace std;

int main()//strlen(s)>=strlen(t)

//cal

for (i=strlen(s)-1,j=strlen(t)-1;j>=0;i--,j--)

while (j<0&&i>=0&&c!=0)

//cut '0' at the end

for (int i=strlen(s)-1;s[i]=='0';i--)

s[i]='\0';

//output

if (c!=0)//if 是整數部分同長型,最後一位存在的進製會遺留在c裡,要把它輸出來 

cout}return true;

}

九度OJ 1137 浮點數加法

題目描述 求2個浮點數相加的和 題目中輸入輸出中出現浮點數都有如下的形式 p1p2 pi.q1q2 qj 對於整數部分,p1p2 pi是乙個非負整數 對於小數部分,qj不等於0 輸入 對於每組案例,第1行是測試資料的組數n,每組測試資料佔2行,分別是兩個加數。每組測試資料之間有乙個空行,每行資料不超...

OJ 1137 浮點數加法

include include include include using namespace std vectorve void getsum string a,string b int k a i 0 b j 0 inc int newk k 10 inc k 10 ve.push back n...

浮點數加法

include includechar input 2 1000 int n char point1 1000 point2 1000 char int1 1000 int2 1000 int pointans 1000 int intans 1000 bool pointcarry int foo...