close
原文
https://uva.onlinejudge.org/index.php?option=onlinejudge&page=show_problem&problem=1042
感謝冰塊大大的翻譯
http://kos74185foracm.blogspot.com/2013/03/10101-bangla-numbers.html
感謝灆霧洢鬱大大的分享
https://knightzone.studio/2012/08/01/1789/uva%EF%BC%9A10101%EF%BC%8Dbangla-numbers/
感謝kuragechan14大大的分享
http://kuragechan14.pixnet.net/blog/post/85859305-%E3%80%90uva%E3%80%9110101---bangla-numbers
請大家務必先閱讀他們的文章,因為這題我是看他們的程式碼才打出來的。
C++
#include <iostream> #include <iomanip> using namespace std; void cal(long long x) { if(x/10000000!=0) { cal(x/10000000);//處理不是最高位那組 //或是輸出數字,下同 cout<<" kuti";//輸出單位 x=x%10000000;//去掉前面的數字,下同 } if(x/100000!=0) { cal(x/100000); cout<<" lakh"; x=x%100000; } if(x/1000!=0) { cal(x/1000); cout<<" hajar"; x=x%1000; } if(x/100!=0) { cal(x/100); cout<<" shata"; x=x%100; } if(x!=0) { cout<<" "<<x;//輸出數字 } } int main() { long long num,count=1; while(cin>>num)//輸入數字 { cout<<setw(4)<<count<<".";//輸出標題數字 cal(num);//呼叫函式 if(num==0)//若輸入為0 { //則輸出0 cout<<" 0"; } count=count+1;//計算次數 cout<<endl;//記得換行 } }
文章標籤
全站熱搜