Zadatak Suma Reda

Pitanje ili opis problema

Uradio sam ovaj zadatak, smatram da sam ga uradio tacno. Kada unesem kod i posaljem, petlja uzvraca pogresan odgovor na primere 8,9,10 Povecao sam ogranicenja, ali nije bilo uspesno. Moj kod:

#include <iostream>
#include <cmath>
#include <iomanip>

using namespace std;

int factorial(int n)
{
    if (n > 1)
        return n * factorial(n - 1);
    else
        return 1;
}

int main()
{
    int n;
    cin >> n;

    double R=1;
    for (int i = 1; i <= n;i++) {
        R += (pow(-1, i)) / (factorial(i));
    }

    cout << fixed << setprecision(15) << R << endl;
    return 0;
}

Link ka zadatku ili odgovarajućoj stranici

https://petlja.org/biblioteka/r/problemi/zbirka-napredni-nivo/suma_reda

Ja mislim da je problem u tome sto koristis rekurziju i sto koristis int a trebalo bi long long. Probaj da cuvas factorial od broja u nekom nizu cisto da bi se vreme izvrsavanja programa smanjilo i stavi long long zato sto je factorial u nekim slucajevima a pogotovo N=20 velik.

2 Likes

To je to, hvala