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
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP