Programa para encontrar el enésimo número impar de Fibonacci

Dado un número entero N. La tarea es encontrar el N número impar de Fibonacci.
La serie impar de fibonacci es como: 
 

1, 1, 3, 5, 13, 21, 55, 89, 233, 377, 987, 1597………….y así sucesivamente.
Nota : En la serie anterior hemos omitido términos pares de la sucesión general de Fibonacci
 

Ejemplos: 
 

Input: N = 3
Output: 3

Input: N = 4
Output: 5

Planteamiento: 
Al observar detenidamente, se puede deducir que cada tercer número de Fibonacci es par, por lo que el N -ésimo número impar de Fibonacci es el {(3*N+1)/2} -ésimo término en la sucesión general de Fibonacci.
A continuación se muestra la implementación del enfoque anterior: 
 

C++

// C++ program for Nth odd fibonacci number
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to find nth odd fibonacci number
int oddFib(int n)
{
    n = (3 * n + 1) / 2;
    int a = -1, b = 1, c, i;
    for (i = 1; i <= n; i++) {
        c = a + b;
        a = b;
        b = c;
    }
    return c;
}
 
// Driver Code
int main()
{
    int n = 4;
     
    cout << oddFib(n);
     
    return 0;
}

Java

// Java program for Nth odd fibonacci number
class GFG
{
     
    // Function to find nth odd fibonacci number
    static int oddFib(int n)
    {
        n = (3 * n + 1) / 2;
         
        int a = -1, b = 1, c = 0, i;
         
        for (i = 1; i <= n; i++)
        {
            c = a + b;
            a = b;
            b = c;
        }
        return c;
    }
     
    // Driver Code
    public static void main (String[] args)
    {
        int n = 4;
         
        System.out.println(oddFib(n));
    }
}
 
// This code is contributed by AnkitRai01

Python3

# Python3 program for Nth odd fibonacci number
 
# Function to find nth odd fibonacci number
def oddFib(n):
    n = (3 * n + 1) // 2
 
    a = -1
    b = 1
    c = 0
    for i in range(1, n + 1):
        c = a + b
        a = b
        b = c
 
    return c
 
# Driver Code
n = 4
 
print(oddFib(n))
 
# This code is contributed by mohit kumar

C#

// C# program for Nth odd fibonacci number
using System;
     
class GFG
{
     
    // Function to find nth odd fibonacci number
    static int oddFib(int n)
    {
        n = (3 * n + 1) / 2;
         
        int a = -1, b = 1, c = 0, i;
         
        for (i = 1; i <= n; i++)
        {
            c = a + b;
            a = b;
            b = c;
        }
        return c;
    }
     
    // Driver Code
    public static void Main (String[] args)
    {
        int n = 4;
         
        Console.WriteLine(oddFib(n));
    }
}
 
// This code is contributed by 29AjayKumar

Javascript

<script>
 
// JavaScript program for Nth odd fibonacci number
 
// Function to find nth odd fibonacci number
function oddFib(n)
{
    n = (3 * n + 1) / 2;
    var a = -1, b = 1, c, i;
    for (i = 1; i <= n; i++) {
        c = a + b;
        a = b;
        b = c;
    }
    return c;
}
 
// Driver Code
var n = 4;
document.write(oddFib(n));
 
</script>
Producción: 

5

 

Complejidad de tiempo: O(N)

Espacio Auxiliar: O(1)
 

Publicación traducida automáticamente

Artículo escrito por spp____ y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *