Вычислить значение суммы бесконечного ряда - C (СИ)
Формулировка задачи:
Всем привет, помогите решить задачу, не пойму как нужно делать.
Решение задачи: «Вычислить значение суммы бесконечного ряда»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#define _USE_MATH_DEFINES
#include <math.h>
int factorial(int n)
{
if (n <= 1)
{
return n;
}
return n * factorial(n - 1);
}
double f()
{
const double e = 1e-4;
double s = M_PI / 3;
double m = 1;
for (size_t n = 1; abs(m) > e; n++)
{
int sign = -1;
if (n % 2 == 0)
{
sign = 1;
}
m = sign * pow(M_PI / 3, 2 * n + 1) / (double)factorial(2 * n + 1);
s += m;
}
return s;
}
int main()
{
double f1 = f();
double f2 = sin(M_PI / 3);
printf("f() = %.8f\n", f1);
printf("sin(PI / 3) = %.8f\n", f2);
#ifdef _MSC_VER
system("pause");
#endif
return EXIT_SUCCESS;
}
Объяснение кода листинга программы
- Название переменной:
nТип: size_t Значение: 1- В цикле for: инициализирует счетчик числа итераций от 1 до ...
- Название переменной:
signТип: int Значение: -1- Устанавливает знак на -1 для первой итерации (m = -1 * m)
- Название переменной:
mТип: double Значение: Начальное значение m не определено, но после первой итерации будет равно -1.0- Используется для хранения значения, которое добавляется к сумме s на каждой итерации
- Название переменной:
sТип: double Значение: Начальное значение s не определено, но после первой итерации будет равно 0.0- Используется для хранения суммы значений, которые добавляются на каждой итерации
- Название переменной:
f1Тип: double Значение: Не определено- Используется для хранения значения функции f()
- Название переменной:
f2Тип: double Значение: Не определено- Используется для хранения значения sin(M_PI / 3)
- Название переменной:
eТип: double Значение: 1e-4- Используется для определения точности вычислений (проверка, что abs(m) > e)
- Название переменной:
M_PIТип: double Значение: Не определено- Используется для хранения значения числа π (3.14159...)
- Название переменной:
printfТип: int Значение: Не определено- Используется для вывода значений функций и переменных на экран
- Название переменной:
EXIT_SUCCESSТип: int Значение: Не определено- Используется для определения успешного завершения программы (возвращает 0)