Рубрики

Решение f (n) = (1) + (2 * 3) + (4 * 5 * 6)… n с использованием рекурсии

Пример :

Input : 2
Output: 7
Series: (1) + (2*3)

Input : 4
Output: 5167
Series: (1) + (2*3) + (4*5*6) + (7*8*9*10) 

C ++

// Программа CPP для печати решения
// из серии f (n) = (1) + (2 * 3)
// + (4 * 5 * 6) ... n с использованием рекурсии
#include<bits/stdc++.h>

using namespace std;

  
// Рекурсивная функция для
// найти сумму ряда
// рассчитано - количество сроков до
// какая сумма условий имеет
// был рассчитан
// текущий - количество терминов, для которых
// сумма должна быть рассчитана
// N - Количество слагаемых в
// функция для расчета

int seriesSum(int calculated, int current, 

                            int N) 

{

    int i, cur = 1;

  

    // проверка условия завершения

    if (current == N + 1) 

        return 0;

  

    // произведение сроков на текущий

    for (i = calculated; i < calculated + 

                            current; i++)

        cur *= i; 

  

    // рекурсивный вызов для добавления

    // условия следующие в серии

    return cur + seriesSum(i, current + 1, N); 

}

  
// Код драйвера

int main()

{

    // вводим количество терминов в серии

    int N = 5; 

  

    // вызов функции для

    // вычисляем сумму

    cout<<seriesSum(1, 1, N)<<endl; 

  

    return 0;

}

С

// C Программа для печати решения
// из серии f (n) = (1) + (2 * 3)
// + (4 * 5 * 6) ... n с использованием рекурсии
#include <stdio.h>

  
// Рекурсивная функция для
// найти сумму ряда
// рассчитано - количество сроков до
// какая сумма условий имеет
// был рассчитан
// текущий - количество терминов, для которых
// сумма должна быть рассчитана
// N - Количество слагаемых в
// функция для расчета

int seriesSum(int calculated, int current, 

                              int N) 

{

    int i, cur = 1;

  

    // проверка условия завершения

    if (current == N + 1) 

        return 0;

  

    // произведение сроков на текущий

    for (i = calculated; i < calculated + 

                            current; i++)

        cur *= i; 

  

    // рекурсивный вызов для добавления

    // условия следующие в серии

    return cur + seriesSum(i, current + 1, N); 

}

  
// Код драйвера

int main()

{

    // вводим количество терминов в серии

    int N = 5; 

  

    // вызов функции для

    // вычисляем сумму

    printf("%d\n", seriesSum(1, 1, N)); 

  

    return 0;

}

Джава

// Java-программа для печати
// решение серии
// f (n) = (1) + (2 * 3) + (4 * 5 * 6)
// ... n используя рекурсию

  

class GFG

{

      

    / **

    * Рекурсивный метод поиска

    * сумма серий

    *

    * @param рассчитанное количество терминов

    * до какой суммы сроков

    * рассчитывается @param текущее число

    * условия, на которые должна быть рассчитана сумма.

    * @param N Количество слагаемых в функции

    * рассчитывается при возврате суммы

    * /

      

    static int seriesSum(int calculated, 

                         int current, 

                         int N) 

    {

        int i, cur = 1;

      

        // проверка условия завершения

        if (current == N + 1

            return 0;

      

        // произведение сроков на текущий

        for (i = calculated; i < calculated + 

                                current; i++)

            cur *= i; 

      

        // рекурсивный вызов для добавления

        // условия следующие в серии

        return cur + seriesSum(i, current + 1, N); 

    }

      

    // Код драйвера

    public static void main(String[] args) 

    {

        // введите номер

        // условия в серии

        int N = 5

      

        // вызов метода

        // рассчитать сумму

        System.out.println(seriesSum(1, 1, N)); 

    }

}

python3

# Python3 Программа для печати решения
№ серии f (n) = (1) + (2 * 3) + (4 * 5 * 6)
# ... n с помощью рекурсии

  
# Рекурсивная функция для нахождения суммы ряда
# рассчитано - количество сроков до
# какая сумма сроков
# было рассчитано
# current - количество терминов для
# какая сумма должна быть
# рассчитано
# N - Количество терминов в
# функция для расчета

def seriesSum(calculated, current, N): 

  

    i = calculated; 

    cur = 1;

  

    # проверка условия завершения

    if (current == N + 1): 

        return 0;

  

    # произведение условий на текущий

    while (i < calculated + current):

        cur *= i;

        i += 1;

  

    # рекурсивный вызов для добавления

    # условия следующие в серии

    return cur + seriesSum(i, current + 1, N);

  
# Код драйвера

  
# введите количество терминов в серии

N = 5

  
# вызов функции
# рассчитать сумму

print(seriesSum(1, 1, N)); 

  
# Этот код предоставлен mits

C #

// C # Программа для печати
// решение серии
// f (n) = (1) + (2 * 3) + (4 * 5 * 6)
// ... n используя рекурсию

using System;

  

class GFG 

{

      

    // Рекурсивная функция для

    // найти сумму ряда

    // рассчитано - количество сроков до

    // какая сумма сроков

    // был рассчитан

    // текущий - количество терминов, для которых

    // сумма должна быть рассчитана

    // N - Количество слагаемых в

    // функция для расчета

    static int seriesSum(int calculated, 

                         int current, 

                         int N) 

    {

          

        int i, cur = 1;

      

        // проверка условия завершения

        if (current == N + 1) 

            return 0;

      

        // произведение сроков на текущий

        for (i = calculated; i < calculated + 

                                current; i++)

            cur *= i; 

      

        // рекурсивный вызов для добавления терминов

        // следующий в серии

        return cur + seriesSum(i, current + 1, N); 

    }

      

    // Код драйвера

    public static void Main() 

    {

          

        // вводим количество терминов

        // в серии

        int N = 5; 

      

        // вызов метода для

        // вычисляем сумму

        Console.WriteLine(seriesSum(1, 1, N)); 

    }

}

  
// Этот код предоставлен vt_m.

PHP

<?php
// PHP программа для печати
// решение серии
// f (n) = (1) + (2 * 3) + (4 * 5 * 6)
// ... n используя рекурсию

  
// Рекурсивная функция для
// найти сумму ряда
// рассчитано - количество сроков до
// какая сумма сроков
// был рассчитан
// текущий - количество терминов для
// какая сумма должна быть
// рассчитывается
// N - Количество слагаемых в
// функция для расчета

function seriesSum($calculated, $current, $N

{

    $i; $cur = 1;

  

    // проверка условия завершения

    if ($current == $N + 1) 

        return 0;

  

    // произведение сроков на текущий

    for ($i = $calculated; $i < $calculated

                              $current; $i++)

        $cur *= $i

  

    // рекурсивный вызов для добавления

    // условия следующие в серии

    return $cur + seriesSum($i, $current + 1, $N); 

}

  
// Код драйвера

  
// введите номер
// условия в серии

$N = 5; 

  
// вызывая функцию
// рассчитать сумму

echo(seriesSum(1, 1, $N)); 

  
// Этот код предоставлен Ajit.
?>

Выход :

365527 

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой теме

Рекомендуемые посты:

Решение f (n) = (1) + (2 * 3) + (4 * 5 * 6)… n с использованием рекурсии

0.00 (0%) 0 votes