Как говорится в названии, как я могу рассчитать сумму номеров n
: 1+(1/2!)+...+(1/n!)
? Я уже получил код для гармонического ряда:Расчет суммы 1+ (1/2!) + ... + (1/n!)
#include <stdio.h>
int main(void)
{
int v=0,i,ch;
double x=0.;
printf("Introduce un número paracalcular la suma: ");
while(scanf("%d",&v)==0 || v<=0)
{
printf("Favor de introducir numeros reales positivos: ");
while((ch=getchar())!='\n')
if(ch==EOF)
return 1;
}
for (i=v; i>=1; i--)
x+=1./i;
printf("EL valor de la serie es %f\n", x);
getch();
return 0;
}
вопрос здесь: я уже получил сумму в качестве фракции, но как я могу вычислить переменную «я» Факториал?
Примечание: программирование Я нахожусь в языке C, с DEV -C++ 4.9.9.2
При больших значениях $ N $, то это должно быть сделано с помощью логарифмов, поскольку биты, сохраненные с помощью целых чисел не является достаточным, а также более восприимчивы к ошибкам. Кроме того, чтобы сделать код намного быстрее, для больших значений $ n $ можно использовать приближение Стирлинга с очень высокой точностью. –