HNUST-1002-Armstrong数

xiaoxiao2021-02-28  79

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; }
转载请注明原文地址: https://www.6miu.com/read-26192.html

最新回复(0)