C++程序:查找数列0, 0, 2, 1, 4, 2, 6, 3, 8…的第N项


在这个问题中,我们给定一个数字N。我们的任务是创建一个C++程序来查找数列0, 0, 2, 1, 4, 2, 6, 3, 8…的第N项。

问题描述

查找给定数列的第N项:

0, 0, 2, 1, 4, 2, 6, 3, 8 .... N项

我们将找到该数列的通项公式。

让我们举个例子来理解这个问题:

输入

N = 8

输出

3

解决方案

为了找到该数列的通项公式,我们需要仔细观察该数列。这个数列有点难以识别,因为它是由两个数列混合而成的。一个数列位于偶数位置,另一个数列位于奇数位置。

奇数项数列:0, 2, 4, 6, 8, 10, 12,....

偶数项数列:0, 1, 2, 3, 4, 5, 6,....

这里:

如果数列的第n项是

奇数,则值为(n-1)。

偶数,则值为$T_{(n-1)}/2$

示例

在线演示

#include
using namespace std;
int findNTerm(int N) {

   if (N % 2 == 0)
      return findNTerm(N-1)/2;
   else {
      return (N-1);
   }
}
int main(){
   int N = 13;
   cout<<N<<"th term of the series is "<<findNTerm(N)<<endl;
}

输出

13th term of the series is 12

更新于:2020年10月9日

浏览量:159

开启你的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.