1 #define _CRT_SECURE_NO_WARNINGS
2 #include <stdio.h>
3 #include <stdlib.h>
4
5 int main(){
6
8 //验证尼科彻斯定理:任何一个大于 2 的整数的立方都可以表示成一串连续奇数的和,这些奇数一定是要连续的(比如 3 ^ 3 == 7 + 9 + 11)。
9
10 //用户输入某个整数,验证该数是否符合尼科彻斯定理,并将对应的式子打印出来。
11 int n, i, j;
12 int num;
13 int sum = 0;
14 printf("请输入一个整数:");
15 scanf("%d", &n);
16 num = n * n * n;
17
18 for (i = 1; i < num; i += 2){ //保证i是奇数
19
20 for (j = i; j < num; j += 2){
21 sum += j;
22 if (sum == num){
23 if (j - i > 4){
24 printf("%d = %d + %d + ... +%d\n",num, i, i + 2, j);
25 }
26 else{
27 printf("%d = %d + %d + +%d\n", num, i, i + 2, i + 4);
28 }
29 goto FINISH;
30 }
31 if (sum > num){
32 sum = 0;
33 break;
34 }
35 }
36 }
37
38
39 FINISH:
40 system("pause");
41 return 0;
42 }