📜  自定义斐波那契数列的第N个术语

📅  最后修改于: 2021-04-23 22:44:52             🧑  作者: Mango

给定三个整数ABN。自定义斐波纳契数列定义为F(x)= F(x – 1)+ F(x + 1) ,其中F(1)= A和F(2)=B。现在的任务是找到第N项这个系列的
例子:

方法:可以观察到该序列将像A,B,B – A,-A,-B,A – B,A,B,B – A,…一样继续进行
下面是上述方法的实现:

C++
// C++ implementation of the Custom Fibonacci series
 
#include 
using namespace std;
 
// Function to return the nth term
// of the required sequence
int nth_term(int a, int b, int n)
{
    int z = 0;
    if (n % 6 == 1)
        z = a;
    else if (n % 6 == 2)
        z = b;
    else if (n % 6 == 3)
        z = b - a;
    else if (n % 6 == 4)
        z = -a;
    else if (n % 6 == 5)
        z = -b;
    if (n % 6 == 0)
        z = -(b - a);
    return z;
}
 
// Driver code
int main()
{
    int a = 10, b = 17, n = 3;
 
    cout << nth_term(a, b, n);
 
    return 0;
}


Java
// Java implementation of the
// Custom Fibonacci series
class GFG
{
 
// Function to return the nth term
// of the required sequence
static int nth_term(int a, int b, int n)
{
    int z = 0;
    if (n % 6 == 1)
        z = a;
    else if (n % 6 == 2)
        z = b;
    else if (n % 6 == 3)
        z = b - a;
    else if (n % 6 == 4)
        z = -a;
    else if (n % 6 == 5)
        z = -b;
    if (n % 6 == 0)
        z = -(b - a);
    return z;
}
 
// Driver code
public static void main(String[] args)
{
    int a = 10, b = 17, n = 3;
 
    System.out.println(nth_term(a, b, n));
}
}
 
// This code is contributed by Rajput-Ji


Python 3
# Python 3 implementation of the
# Custom Fibonacci series
 
# Function to return the nth term
# of the required sequence
def nth_term(a, b, n):
    z = 0
    if (n % 6 == 1):
        z = a
    elif (n % 6 == 2):
        z = b
    elif (n % 6 == 3):
        z = b - a
    elif (n % 6 == 4):
        z = -a
    elif (n % 6 == 5):
        z = -b
    if (n % 6 == 0):
        z = -(b - a)
    return z
 
# Driver code
if __name__ == '__main__':
    a = 10
    b = 17
    n = 3
 
    print(nth_term(a, b, n))
     
# This code is contributed by Surendra_Gangwar


C#
// C# implementation of the
// Custom Fibonacci series
using System;
 
class GFG
{
     
// Function to return the nth term
// of the required sequence
static int nth_term(int a, int b, int n)
{
    int z = 0;
    if (n % 6 == 1)
        z = a;
    else if (n % 6 == 2)
        z = b;
    else if (n % 6 == 3)
        z = b - a;
    else if (n % 6 == 4)
        z = -a;
    else if (n % 6 == 5)
        z = -b;
    if (n % 6 == 0)
        z = -(b - a);
    return z;
}
 
// Driver code
static public void Main ()
{
    int a = 10, b = 17, n = 3;
 
    Console.Write(nth_term(a, b, n));
}
}
 
// This code is contributed by ajit.


Javascript


输出:
7