C语言经典例题|【C语言典例】——day7(尼科彻斯定理)

※※※大家好!我是同学〖森〗,一名计算机爱好者,今天让我们进入刷题模式。若有错误,请多多指教。 【C语言经典例题|【C语言典例】——day7(尼科彻斯定理)】 点赞 ? 收藏 留言 都是我创作的最大的动力!
目录
※※※大家好!我是同学〖森〗,一名计算机爱好者,今天让我们进入刷题模式。若有错误,请多多指教。
题目描述:
问题分析
程序源码
运行结果
?


题目描述:
HJ76 尼科彻斯定理
C语言经典例题|【C语言典例】——day7(尼科彻斯定理)
文章图片

示例:
输入:6
输出:31+33+35+37+39+41
问题分析
1、这道题的关键在于知道规律后,能够找到第m个数据立方的起始奇数,从这个起始奇数开始,组成连续的 m 个奇数项之和的表达式即可。2、而起始奇数有个规则:m^3的起始奇数值等于m * (m-1) + 1。 证明:x ,x+2,x+4……y-4, y-2, y。共m个数 根据题意可知:y - x= 2*(m-1) ( (x + y) / 2 )*m = m^3等差数列求和公式:Sn=n(a1+an)/2可解的x = m * (m - 1)+ 1 3、多项输入问题。
程序源码
#includeint main() { int m = 0; int start = 0; while (scanf("%d", &m) != EOF) //多项输入 {start = m * (m - 1) + 1; //找到对应m^3的起始奇数 int sum = 0; printf("%d", start); for (int i = 1; i < m; i++) //打印剩余m-1个奇数 { start += 2; printf("+%d", start); }printf("\n"); } return 0; }


运行结果 C语言经典例题|【C语言典例】——day7(尼科彻斯定理)
文章图片

    推荐阅读