Open In App

Sum of numbers from 1 to N which are in Fibonacci Sequence

Last Updated : 13 Mar, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

Given an integer N, the task is to find the sum of numbers from 1 to N which are in Fibonacci sequence
First few Fibonacci numbers are 1, 1, 2, 3, 5, 8, 13, 21, 34, ….
Examples: 
 

Input: N = 5 
Output: 12 
1 + 1 + 2 + 3 + 5 = 12
Input: N = 10 
Output: 20 
1 + 1 + 2 + 3 + 5 + 8 = 20 
 

 

Approach: 
 

  • Loop through all the Fibonacci numbers which are less than N.
  • Initialize a sum variable with 0.
  • Keep on adding these Fibonacci numbers to get the required sum.

Below is the implementation of the above approach:
 

C++




// C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;
  
// Function to return the
// required sum
int fibonacciSum(int N)
{
  
    if (N == 0)
        return 0;
  
    // Generate all Fibonacci numbers <= N
    // and calculate the sum
    int sum = 0;
    int a = 1, b = 1, c;
    sum += a;
    while (b <= N) {
  
        sum += b;
        int c = a + b;
        a = b;
        b = c;
    }
    return sum;
}
  
// Driver code
int main()
{
    int N = 20;
    cout << fibonacciSum(N);
  
    return 0;
}


Java




// Java implementation of the approach
class GFG
{
      
// Function to return the
// required sum
static int fibonacciSum(int N)
{
  
    if (N == 0)
        return 0;
  
    // Generate all Fibonacci numbers <= N
    // and calculate the sum
    int sum = 0;
    int a = 1, b = 1, c;
    sum += a;
    while (b <= N)
    {
  
        sum += b;
        c = a + b;
        a = b;
        b = c;
    }
    return sum;
}
  
// Driver code
public static void main(String[] args)
{
    int N = 20;
    System.out.println(fibonacciSum(N));
}
}
  
// This code is contributed by Code_Mech.


Python3




# Python3 implementation of 
# the approach 
  
# Function to return the 
# required sum 
def fibonacciSum(N): 
  
    if N == 0:
        return 0
  
    # Generate all Fibonacci 
    # numbers <= N and calculate
    # the sum 
    Sum = 0
    a, b = 1, 1
    Sum +=
    while b <= N: 
  
        Sum +=
        a, b = b, a +
      
    return Sum
  
# Driver code 
if __name__ == "__main__"
  
    N = 20
    print(fibonacciSum(N)) 
  
# This code is contributed 
# by Rituraj Jain


C#




// C# implementation of the approach
using System;
  
class GFG
{
      
// Function to return the
// required sum
static int fibonacciSum(int N)
{
  
    if (N == 0)
        return 0;
  
    // Generate all Fibonacci numbers <= N
    // and calculate the sum
    int sum = 0;
    int a = 1, b = 1, c;
    sum += a;
    while (b <= N)
    {
  
        sum += b;
        c = a + b;
        a = b;
        b = c;
    }
    return sum;
}
  
// Driver code
public static void Main()
{
    int N = 20;
    Console.WriteLine(fibonacciSum(N));
}
}
  
// This code is contributed by Code_Mech.


PHP




<?php
// PHP implementation of the approach
  
// Function to return the
// required sum
function fibonacciSum($N)
{
    if ($N == 0)
        return 0;
  
    // Generate all Fibonacci numbers <= N
    // and calculate the sum
    $sum = 0;
    $a = 1; $b = 1; $c;
    $sum += $a;
    while ($b <= $N)
    {
        $sum += $b;
        $c = $a + $b;
        $a = $b;
        $b = $c;
    }
    return $sum;
}
  
// Driver code
$N = 20;
  
echo(fibonacciSum($N));
  
// This code is contributed 
// by Code_Mech.
?>


Javascript




<script>
  
// Javascript implementation of the approach
  
// Function to return the
// required sum
function fibonacciSum(N)
{
  
    if (N == 0)
        return 0;
  
    // Generate all Fibonacci numbers <= N
    // and calculate the sum
    var sum = 0;
    var a = 1, b = 1, c;
    sum += a;
    while (b <= N) {
  
        sum += b;
        var c = a + b;
        a = b;
        b = c;
    }
    return sum;
}
  
// Driver code
var N = 20;
document.write( fibonacciSum(N));
  
</script>


Output: 

33

 



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads