拆数字(qduoj)
程序员文章站
2024-03-17 16:53:04
...
拆数字
Description
输入多行正整数,输入他们拆分后的形式,比如 1234拆分为1 1000 + 2 100 + 3 10 + 4 1,1034拆分为 1 1000 + 3 10 + 4 * 1
Input
多行正整数
Output
对应的拆分结果,乘号使用 * 代替,数字和符号之间都有一个空格间隔
Sample Input 1
1234 1034
Sample Output 1
1 * 1000 + 2 * 100 + 3 * 10 + 4 * 1 1 * 1000 + 3 * 10 + 4 * 1
#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
int main(){
char a[15];
while(~scanf("%s",a)){
int x=strlen(a);
cout<<a[0]<<" * "<<(int)pow(10,x-1);
for(int i=1;i<x;i++){
if(a[i]=='0') continue;
cout<<" + "<<a[i]<<" * "<<(int)pow(10,x-i-1);
}
cout<<endl;
}
return 0;
}