C++程序找出数列5, 2, 13, 41,…的第n项
在这个问题中,我们给定一个整数N。我们的任务是创建一个程序来查找数列5, 2, 19, 13, 41, 31, 71, 57…的第N项。
让我们举个例子来理解这个问题:
输入
N = 5
输出
41
解释
该数列为:5, 2, 19, 13, 41, …
解决方案
解决这个问题的一个简单方法是使用该数列第n项的通用公式。该数列对于奇数和偶数的值有不同的公式。
第N项由下式给出:
Nth term = (N-1)^2 + N, if N is even i.e N%2 == 0 Nth term = (N+1)^2 + N, if N is odd i.e N%2 != 0
程序演示了我们解决方案的工作原理:
示例
#include <iostream> using namespace std; int calcNthTerm(int N) { if (N % 2 == 0) return ( ( (N - 1)*( N - 1) ) + N ) ; return ( ( (N + 1)*( N + 1) ) + N ) ; } int main() { int N = 7; cout<<N<<"th term of the series is "<<calcNthTerm(N); return 0; }
输出
6th term of the series is 258
广告