Найдите n членов ряда типа Фибоначчи с заданными первыми двумя членами
Опубликовано: 5 Марта, 2022
Для первых двух чисел ряда найдите n членов ряда с этими двумя числами. Данный ряд следует той же концепции, что и ряд Фибоначчи, т.е. n-й член является суммой (n-1) -го и (n-2) -го членов.
Примеры:
Ввод: первый = 5, второй = 8, n = 5 Выход: 5, 8, 13, 21, 34 Ввод: first = 2, sec = 4, n = 5 Выход: 2, 4, 6, 10, 16
Рекомендуется: сначала попробуйте свой подход в {IDE}, прежде чем переходить к решению.
Approach:
The approach is similar to finding Fibonacci series where the summation of last two terms form the next term. Find the sum of first two given numbers, second number now will serve as first number to find the next term and the sum produced will serve as second number to find the next term. Sum of these two newly formed first and second term will form the next required term.
Below is the implementation program:
C++
// C++ program to find n terms of // series from given two numbers #include <bits/stdc++.h> using namespace std; // Function to find n terms // of series void findSeries( int num, int first, int sec) { cout << first << " " << sec << " " ; int counter = 0, sum; // find next (num - 2) terms of series // as first two terms are already given while (counter < num - 2) { sum = first + sec; cout << sum << " " ; first = sec; sec = sum; counter++; } } // Drivers code int main() { int n = 5, first = 2, sec = 4; findSeries(n, first, sec); return 0; } |
Java
// Java program to find n terms of // series from given two numbers import java.io.*; class GFG { // Function to find n terms // of series static void findSeries( int num, int first, int sec) { System.out.print(first + " " + sec + " " ); int counter = 0 , sum; // find next (num - 2) terms // of series as first two // terms are already given while (counter < num - 2 ) { sum = first + sec; System.out.print( sum + " " ); first = sec; sec = sum; counter++; } } // Drivers code public static void main (String[] args) { int n = 5 , first = 2 , sec = 4 ; findSeries(n, first, sec); } } // This code is contributed by vt_m. |
Python3
# Python3 program to find n terms of # series from given two numbers # Function to find n terms # of series def findSeries(num, first, sec) : print ( "{} {} " . format (first, sec), end = "") counter = 0 # find next (num - 2) terms of # series as first two terms are # already given while (counter < num - 2 ): sum = first + sec print ( "{} " . format ( sum ), end = "") first = sec sec = sum counter = counter + 1 # Drivers code n = 5 first = 2 sec = 4 findSeries(n, first, sec) # This code is contributed by # Manish Shaw (manishshaw1) |
C#
// C# program to find n terms of // series from given two numbers using System; class GFG { // Function to find n terms // of series static void findSeries( int num, int first, int sec) { Console.Write(first + " " + sec + " " ); int counter = 0, sum; // find next (num - 2) terms // of series as first two // terms are already given while (counter < num - 2) { sum = first + sec; Console.Write( sum + " " ); first = sec; sec = sum; counter++; } } // Drivers code public static void Main () { int n = 5, first = 2, sec = 4; findSeries(n, first, sec); } } // This code is contributed by anuj_67. |
PHP
<?php // PHP program to find n terms of // series from given two numbers // Function to find n terms // of series function findSeries( $num , $first , $sec ) { echo $first , " " , $sec , " " ; $counter = 0; $sum ; // find next (num - 2) terms of series // as first two terms are already given while ( $counter < $num - 2) { $sum = $first + $sec ; echo $sum , " " ; $first = $sec ; $sec = $sum ; $counter ++; } } // Driver Code $n = 5; $first = 2; $sec = 4; findSeries( $n , $first , $sec ); // This code is contributed by anuj_67. ?> |
Javascript
<script> // javascript program to find n terms of // series from given two numbers // Function to find n terms // of series function findSeries( num, first, sec) { document.write(first + " " + sec + " " ); let counter = 0, sum; // find next (num - 2) terms of series // as first two terms are already given while (counter < num - 2) { sum = first + sec; document.write(sum + " " ); first = sec; sec = sum; counter++; } } // Drivers code let n = 5, first = 2, sec = 4; findSeries(n, first, sec); // This code is contributed by Rajput-Ji </script> |
Output:
2 4 6 10 16
Точно так же, чтобы найти N-е число, сгенерируйте N членов ряда указанным выше способом и выведите N-е число.