题目描述:
验证尼科彻斯定理,即:任何一个正整数的立方都可以写成一串连续奇数的和。
输入:
任一正整数
输出:
该数的立方分解为一串连续奇数的和
样例输入
13
样例输出
13*13*13=2197=157+159+161+163+165+167+169+171+173+175+177+179+181
#include<iostream> //输入输出 #include<stdio.h> #include<string> //字符串 #include<iomanip> //数字精度 #include<algorithm> //排序 #include<math.h> #include<memory.h> #include<array> using namespace std; int main() { long a(0),b(0),c(0); cin >> a; getchar(); b = a*a*a; c = a*a - a + 1; if (a != 0) { for (int i = 0; i < 3; i++) { cout << a; if (i < 2){ cout << '*'; } } cout << '=' << b << '='; a = c; while (a != b) { cout << c << '+'; c += 2; a += c; } cout << c << endl; } else { cout << a << '*' << a << '*' << a << '=' << a << '=' << a << endl; } return 0; }