[問題]請神人幫我看一下這題有關計算進位的Code
這是 Online Judge p015 題目問說兩個小於十位的整數相加有幾個進位
最後顯示進位數目即可
#include <iostream>
int main(){
using namespace std;
string nu_1,nu_2;
int a[15],b[15];
int carry=0,cun_cary=0;
cin>>nu_1>>nu_2;
do{//6
cun_cary=0;
for(int i=0;i<=14;i++){//3
a[i]=0;
b[i]=0;
}//3
for(int i=0;i<nu_1.size();i++){//2
int reg;
reg=nu_1[i];
a[i]=reg-48;
}//2
for(int i=0;i<nu_2.size();i++){//1
int reg1;
reg1=nu_2[i];
b[i]=reg1-48;
}//1
carry=0;
for(int i=0;i<=14;i++){//4
if(a[i]+b[i]+carry>=10){
carry=1;
cun_cary++;
cout<<"*"<<i<<endl;}
else
carry=0;
}//4
if(cun_cary==0)
cout<<"No carry operation."<<endl;
else if(cun_cary==1)
cout<<cun_cary<<" carry operation."<<endl;
else
cout<<cun_cary<<" carry operations."<<endl;
cin>>nu_1>>nu_2;
}while(nu_1[0]!='0'&&nu_2[0]!='0');//6
return 0;
}
我的做法是把兩個數字用字串方式讀入 然後再分別放到陣列裡相加
小弟測不出哪邊有Bug 上傳上去第二個case(WA:2)就出錯了 請各位大神幫小弟看看
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.216.83
→
07/28 15:17, , 1F
07/28 15:17, 1F
→
07/28 16:03, , 2F
07/28 16:03, 2F
推
07/28 16:41, , 3F
07/28 16:41, 3F
→
07/28 16:41, , 4F
07/28 16:41, 4F
→
07/28 16:47, , 5F
07/28 16:47, 5F
→
07/28 16:48, , 6F
07/28 16:48, 6F
→
07/28 16:49, , 7F
07/28 16:49, 7F
推
07/28 16:56, , 8F
07/28 16:56, 8F
推
07/28 17:00, , 9F
07/28 17:00, 9F
→
07/28 17:15, , 10F
07/28 17:15, 10F
→
07/28 17:20, , 11F
07/28 17:20, 11F
→
07/28 17:32, , 12F
07/28 17:32, 12F
→
07/28 17:34, , 13F
07/28 17:34, 13F
推
07/28 17:38, , 14F
07/28 17:38, 14F
→
07/28 17:38, , 15F
07/28 17:38, 15F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章