Задать вопрос
@Talge

Как вычислить значение интеграла (sint/t)dt как сумму M членов ряда?

Я студент ВУЗа и это наша лабораторная работа

Задача:
Вычислить значение интеграла (sint/t)dt (от 0 до x) как сумму M членов ряда: x - ((x^3)/(3*3!)) + ((x^5)/(5*5!)) - ... + ((x^n)/(n * n!))

Я не совсем понял формулировку задачи, но попытался написать код. Решает ли мой код задачу? Если нет, то что нужно исправить

#include <iostream>
#include <cmath>

int main() {
        int m = 0;
        double x = 0;
        std::cin >> x;
        double a = x;
        double result = 0;
        std::cin >> m;
        if (m < 0) {
                std::cout << "M < 0" << std::endl;
                return 0;
        } else if (m == 0) {
                std::cout << 0 << std::endl;
                return 0;
        }
        result = a;
        int n = 1;
        for (int i = 1; i < m; i++) {
                n += 2;
                a *= -pow(x / n, 2) * (n - 2) / (n - 1);
                result += a;
        }
        std::cout << result << std::endl;

        return 0;
}
  • Вопрос задан
  • 210 просмотров
Подписаться 1 Средний 3 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы