//循环相乘算法
#include<stdio.h>
int main()
{
double n, m, i, j;
double sum = 0;
scanf_s("%lf", &n);
for (i = n; i > 0; i--)
{
m = 1;
for (j = i; j > 0; j--)
{
m = j*m;
}
sum = sum + m;
}
printf("%.2lf", sum);
return 0;
}
//递归法
#include"stdio.h"
double fun(int n)
{
double f;
if (n == 1) f = 1;
else f = n*fun(n - 1); //递归关系
return(f);
}
int main()
{
int n;
double f;
scanf_s("%d",&n);
f = fun(n);
printf("%.2lf",f);
return 0;
}