推 snowlike:108000, 100800 +-*/%不需include math 10/20 08:32
http://zerojudge.tw/ShowProblem?problemid=a008
這是問題
不過的測資是input: 100000
我在dev測試:壹拾萬(正確)
但上傳後輸出是:壹拾(錯誤)
以下是小弟的程式碼請大家看看
另外小弟新手上路 寫的又臭又長 如果能提出建議的話 非常感謝@@
#include <iostream>
#include <math.h>
using namespace std;
int a,b,c,d;
string g[11]="零";
int main()
{
while(cin>>a)
{
b=0;
while(a!=0)
{
c=a%10;
switch(c)
{
case 0:
g[b]="零";
break;
case 1:
g[b]="壹";
break;
case 2:
g[b]="貳";
break;
case 3:
g[b]="參";
break;
case 4:
g[b]="肆";
break;
case 5:
g[b]="伍";
break;
case 6:
g[b]="陸";
break;
case 7:
g[b]="柒";
break;
case 8:
g[b]="捌";
break;
case 9:
g[b]="玖";
break;
}
a=a/10;
b++;
}
b--;
for(c=b;c>=0;c--)
{
if(g[c]!="零")
{
cout<<g[c];
switch(c)
{
case 1:
cout<<"拾";
break;
case 2:
cout<<"佰";
break;
case 3:
cout<<"仟";
break;
case 4:
cout<<"萬";
break;
case 5:
cout<<"拾";
break;
case 6:
cout<<"佰";
break;
case 7:
cout<<"仟";
break;
case 8:
cout<<"億";
break;
case 9:
cout<<"拾";
}
}
}
if(g[0]=="零"&&g[1]=="零"&&g[2]=="零"&&g[3]=="零"&&g[4]=="零") //修正特
例
{
if(g[9]!="零"&&g[8]=="零")
cout<<"億";
else if ( g[9]=="零"&&g[8]=="零")
cout<<"萬";
}
cout<<endl;
}
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.106.198