立方變自身
觀察下面的現象,某個數字的立方,按位累加仍然等於自身。 1^3 = 1 8^3 = 512 5+1+2=8 17^3 = 4913 4+9+1+3=17 …
請你計算包括1,8,17在內,符合這個性質的正整數一共有多少個?
答案:6
方法:
這道題是將一個數的每位分割再求和,轉換爲字符串比較方便。
至於長度,6位數最大和爲54(6個9),55以後的數就不可能滿足要求了。
參考代碼:
#include<iostream>
#include<sstream>
#include<string>
using namespace std;
int main()
{
int x3, sum = 0, cnt = 0;
string s;
for (int i = 1; i <= 100; i++)
{
sum = 0;
x3 = i*i*i;
stringstream ss;
ss << x3;
ss >> s;//將x3轉換爲字符串
for (int j = 0; j < s.length(); j++)
{
sum += s[j] - '0';
}
if (sum == i)
cnt++;
}
cout << cnt;
return 0;
}