HNUST-1002-Armstrong数

来源:互联网 发布:淘宝秒杀器的插件 编辑:程序博客网 时间:2024/06/05 15:45

1002-Armstrong数

问题总结:
1.希望接下来使用先声明后定义的形式写函数
2.C++的string很方便,通过+=即可以完成字符串的拼接
3.字符串和数字相互转换的自写函数

string num2str(int i){    stringstream ss;    ss << i;    return ss.str();}int str2num(string s){    int num;    stringstream ss(s);    ss >> num;    return num;}




#include<iostream>#include<sstream>#include<string>using namespace std;string num2str(int i);int str2num(string s);int main(){    int a = 1, b = 0, c = 0;    int id[10];    string A, B, C;    int w;    int i = 1;    //cout << A << B << C;    for(a = 1; a <= 9; a++)        for(b = 0; b <= 9; b++)            for(c = 0; c <= 9; c++)            {                A = num2str(a);                B = num2str(b);                C = num2str(c);                int sum = a * a * a + b * b * b + c * c * c;                string res;                res += A;                res += B;                res += C;                int numres;                numres = str2num(res);                if(sum == numres)                {                    //cout << id << ":" << sum << endl;                    id[i] = sum;                    i++;                }            }    while((cin >> w) && w != 0)     {        if(w > i -1)            cout << "0" << endl;        else            cout << id[w] <<endl;    }    //cout << res;    return 0;}string num2str(int i){    stringstream ss;    ss << i;    return ss.str();}int str2num(string s){    int num;    stringstream ss(s);    ss >> num;    return num;}
原创粉丝点击