首页 > 后端开发 > C++ > C/C++程序:计算以n的平方减去(n-1)的平方为第n项的序列的和

C/C++程序:计算以n的平方减去(n-1)的平方为第n项的序列的和

WBOY
发布: 2023-08-26 19:21:03
转载
911 人浏览过

C/C++程序:计算以n的平方减去(n-1)的平方为第n项的序列的和

数学中有很多类型的级数,可以在C编程中轻松解决。该程序是在 C 程序中求级数的以下总和。

T<sub>n</sub> = n<sup>2</sup> - (n-1)<sup>2</sup>
登录后复制

求级数所有项的总和,即 Sn mod (109 + 7) 和,

Sn = T 1 + T2 + T3 + T4 + ...... + Tn

Input: 229137999
Output: 218194447
登录后复制

说明

Tn可以表示为2n-1来得到

正如我们知道,

=> Tn = n2 - (n-1)2
=>Tn = n2 - (1 + n2 - 2n)
=>Tn = n2 - 1 - n2 + 2n
=>Tn = 2n - 1.
find &sum;Tn.
&sum;Tn = &sum;(2n &ndash; 1)
Reduce the above equation to,
=>&sum;(2n &ndash; 1) = 2*&sum;n &ndash; &sum;1
=>&sum;(2n &ndash; 1) = 2*&sum;n &ndash; n.
here, &sum;n is the sum of first n natural numbers.
As known the sum of n natural number &sum;n = n(n+1)/2.
Now the equation is,
&sum;Tn = (2*(n)*(n+1)/2)-n = n2
The value of n2 can be large. Instead of using n2 and take the mod of the result.
So, using the property of modular multiplication for calculating n2:
(a*b)%k = ((a%k)*(b%k))%k
登录后复制

示例

的中文翻译为:

示例

#include <iostream>
using namespace std;
#define mod 1000000007
int main() {
   long long n = 229137999;
   cout << ((n%mod)*(n%mod))%mod;
   return 0;
}
登录后复制

以上是C/C++程序:计算以n的平方减去(n-1)的平方为第n项的序列的和的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板