Как правильно создать сумму(сигма) в Си?

Написал свой код для суммы,но он выводит неправильный ответ.В чем может быть проблема? введите сюда описание изображения

#include <stdio.h>
#include <math.h>

int main(){ 
  
    int i,n,sum; 
    double sum2,j; 
        sum = 0; 
        for (i = 1;i <= 5;i++){ 
            sum += (2*i)*(sin(i+1)); 
            sum2 = 1; 
        } 
             
        for (j = 1;j <= 5;j++){ 
                sum2 *= (j + cos(j)); 
                printf("\n Ответ: %f",sum / sum2); 
            } 
             
         
    } 

Ответы (1 шт):

Автор решения: Harry

Вот как это посчитать верно:

double y(int n)
{
    double p = 1, s = 0;
    for(int i = 1; i <= n; ++i)
    {
        p *= i + cos(i);
        s += i * sin(i+1)/p;
    }
    return 2*s;
}

У вас произведение считается как произведение от 1 до n, а на самом деле?

→ Ссылка