字串 AOJ 437 高精度加法

2022-08-20 01:12:08 字數 1382 閱讀 9441

description

計算一組連續的非負整數的和

input

第一行t,表示測試資料有t組

第2至k+1行:每行乙個非負整數,位數在100以內,每組長整數不超過50個,每組輸入以"0"結束

output

每組對應乙個輸出,為該組數的和

sample input

1

123456789012345678901234567890

123456789012345678901234567890

123456789012345678901234567890

0

sample output

370370367037037036703703703670

hint

整數可能以0開始

思路:高精度加法就是模擬手算,用字串逆序儲存數字,每位相加,>=10進一位和下一位相加,要注意這題可能以0開始,即010+010 000+010等都有可能,注意處理前導0

#include #include 

char a[55][110]=;

void add(char *a,char *b);//

高精度加法

void change(char *a);//

字串倒序

void del(char *a,int n);//

刪除前導0

intmain()

del(a[k],flag);

}change(a[k]);

k++;

}for(i=0;i)

add(a[i],a[i+1

]); len=strlen(a[i]);

for(k=len-1;k>=0;k--)

printf("%c

",a[i][k]);

printf("\n

");}

return0;

}void add(char *a,char *b)

; lena=strlen(a);

lenb=strlen(b);

if(lena>lenb)

for(;i)

if(e)

p[i++]=e+'0'

; p[i]=0

; }

else

for(;i)

if(e)

p[i++]=e+'0'

; p[i]=0

; }

strcpy(b,p);

}void change(char *a)

}void del(char *a,int

n)

高精度加法(字串)

題目描述 修羅王解決了計算機的記憶體限制問題,終於可以使用電腦進行大型的魔法運算了,他交給邪狼的第乙個任務是計算兩個非負整數a b的和,其中a和b的位數在5000位以內。輸入 共兩行資料,第一行為乙個非負整數a,第二行為乙個非負整數b,a b的位數均在5000以內。輸出 輸出乙個非負數,即兩數之和。...

字串加法

輸入兩個字串a和b,字串內容為二進位制數字,求兩個字串相加的結果,加法計算方法以二進位制方式計算,並返回對應的字串結果。要求程式盡可能的高效。示例如下 param a 1101 param b 1100 return 11001 public string add string a,string b...

PHP 字串加法運算(大數加法)

請設計乙個演算法能夠完成兩個用字串儲存的整數進行相加操作,對非法的輸入則返回error 輸入描述 輸入為一行,包含兩個字串,字串的長度在 1,100 輸出描述 輸出為一行。合法情況輸出相加結果,非法情況輸出error 示例1 輸入123 123 abd 123 輸出246 error 字串加法運算 ...