не верный факториал

Дано натуральные числа N, M.

Вычислить

введите сюда описание изображения

что именно не верно?

выдает ошибки что факториал не объявлен

#include<stdio.h>
#include<conio.h>
#include<math.h>
int main(void)
{
int n,m;
printf("n=\n");
scanf("%d",&n);
printf("m=\n");
scanf("%d",&m);
int k=m,fact;
int v;
int fact;
int count;
    v=1;
    for (int i=1;i<=count;i++)
        v=v*i;
    return v;

if(n>m)
 {
  for(int i=0;i<=n;i++)
   {
     double s;
     s=k*k*log(fact(k));
     printf("s=%d");
   } 
 }
else
return 0;
}

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

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

Как-то так - выразив ak через ak-1...

double Sum(unsigned int M, unsigned int N)
{
    if (M > N) {unsigned int k = M; M = N; N = k; }
    double term = 1;
    for(unsigned int k = 1; k <= M; ++k) term *= k;
    term = M*M*log(term);
    double sum = term;
    for(unsigned int k = M+1; k <= N; ++k)
    {
        term = (term/(k-1)/(k-1) +log(k))*k*k;
        sum += term;
    }
    return sum;
}
→ Ссылка