更新时间2018-03-06 19:59:32
题目描述
验证尼科彻斯定理,即:任何一个正整数的立方都可以写成一串连续奇数的和。
输入
任一正整数
输出
该数的立方分解为一串连续奇数的和
样例输入
13
样例输出
13*13*13=2197=157+159+161+163+165+167+169+171+173+175+177+179+181
#include<iostream>
using namespace std;
int main()
{
int n,a,c,d;
cin>>n;
cout<<n<<"*"<<n<<"*"<<n<<"="<<n*n*n<<"=";
for(d=0,c=0;c<n;c++)
{
d+=n*n-n+1+c*2;
cout<<n*n-n+1+c*2<<"+";
}
}
最后多输出一个+,怎么改啊
如果您的结果都是正确的,只要控制一下格式就行,把for语句改成:
for(d=0,c=0;c<n;c++)
{
d+=n*n-n+1+c*2;
if(c==0) cout<<n*n-n+1+c*2;
else cout<<"+"<<n*n-n+1+c*2;
}
输出结果:
还有,给您提两个意见,d归零最好不要写在条件(小括号)里面;最后最好要return 0;这句。希望能帮到您!记得采纳哦o(* ̄︶ ̄*)o!