原题链接:C语言训练-尼科彻斯定理
解题思路:
..........这个题出的有问题,如果不知道这个定理的证明很难做
本题是一个定理,我们先来证明它是成立的。
对于任一正整数a,不论a是奇数还是偶数,整数(a×a-a+1)必然为奇数。
构造一个等差数列,数列的首项为(a×a-a+1),等差数列的差值为2(奇数数列),则前a项的和为:
a×((a×a-a+1))+2×a(a-1)/2
=a×a×a-a×a+a+a×a-a
=a×a×a
定理成立。证毕。
通过定理的证明过程可知L所要求的奇数数列的首项为(a×a-a+1),长度为a。
编程的算法不需要特殊设计,可按照定理的证明过直接进行验证。
注意事项:
参考代码:
#include<stdio.h>
int main()
{
int n,a,i;
scanf("%d",&n);
a=n*n-n+1;
printf("%d*%d*%d=%d=%d",n,n,n,n*n*n,a);
for(i=1;i<n;i++)
{
a=a+2;
printf("+%d",a);
}
}
0.0分
26 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复