Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Альма
12 / 9 / 1
Регистрация: 25.11.2010
Сообщений: 358
Записей в блоге: 1
#1

Вычисление суммы с факториалом - C++

16.01.2014, 16:34. Просмотров 289. Ответов 1
Метки нет (Все метки)

Для каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x)–S(x)| и вывести в виде таблицы. Значения a, b, h и n вводятся с клавиатуры.
Так как значение S(x) является рядом разложения функции Y(x), при правильном решении значения S и Y для заданного аргумента x (для тестовых значений исходных данных) должны совпадать в целой части и в первых двух-четырех позициях после десятичной точки.
Работу программы проверить для a = 0,1; b = 1,0; h = 0,1.
Формулы на картинке

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
#pragma hdrstop
//---------------------------------------------------------------------------
//#pragma argsused
 
int main(int argc, char* argv[])
{
    double a, b, h, S, Y, x, r;
    int i, n;
 
    cout << "Vvedite a:";
    cin >> a;
    cout << "Vvedite b:";
    cin >> b;
    cout << "Vvedite h:";
    cin >> h;
    cout << "Vvedite n:";
    cin >> n;
 
    for (x = a; x <= b; x += h)       //цикл изменения х от а до b с шагом h
    {
        Y = (pow(x, 2) / 4 + (x / 2) + 1)*exp(x / 2); //вычисление Y(x)
        {
            r = S = 1;
            for (i = 1; i <= n; i++)
            {
                r *= ((i*i + 1) / ((i - 1)*i))*(pow((x / 2), i)); // ПРОБЛЕМА
                S += r; // вычисление S(x)
            }
 
            printf("\n x= %8.2lf   S(x)= %8.5lf    Y(x)= %8.5lf    |Y(x)-S(x)|= %8.5lf", x, S, Y, fabs(Y - S));    //вывод результат для каждого шага   
            i++;
        }
        _getch();
        return 0;
    }
}
Проблема с вычислением суммы, т.к. там факториал, помогите исправить
0
Миниатюры
Вычисление суммы с факториалом  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2014, 16:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычисление суммы с факториалом (C++):

Вычисление суммы ряда с факториалом - C++
не могу понять как правильно сделать, чтобы вычислялся факториал \sum_{0}^{\infty}\frac{1}{(2n + 1)!} #include &lt;iostream&gt; #define...

Запись формулы алгебраической суммы c факториалом - C++
не могу понять как записать и посчитать это выражение: \sum_{K=1}^{N} \frac{K!}{\frac{1}{2}+\frac{1}{3}+...+\frac{1}{K+1}}

Найти значение функции и суммы с факториалом - C++
Имеется задание: Для каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x)–S(x)| и вывести в виде...

Вычисление суммы четных и суммы нечетных чисел в одномерном массиве - C++
1) Написать программу для вычисления суммы четных и суммы нечетных чисел в одномерном массиве!

Ввод элементов массива с клавиатуры, вычисление суммы по формуле, нахождение максимальной суммы - C++
Помогите дополнить код. Нужно, чтоб элементы массива вводились с клавиатуры. Выводилось на экран все суммы, которые вычисляются по формуле,...

Вычисление суммы квадратов четных чисел и суммы кубов нечетных чисел - C++
Написать программу вычисления суммы S квадратов четных и кубов нечетных чисел от 1 до N. Проверку числа на четность осуществить с помощью...

1
Альма
12 / 9 / 1
Регистрация: 25.11.2010
Сообщений: 358
Записей в блоге: 1
16.01.2014, 16:58  [ТС] #2
Разобралась сама!
Теперь считает, но выводит только один результат.../

Добавлено через 7 минут
Вопрос снят.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//---------------------------------------------------------------------------
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
#pragma hdrstop
//---------------------------------------------------------------------------
//#pragma argsused
 
int main(int argc, char* argv[])
{
    double a, b, h, S, Y, x, r;
    int i, n;
 
    cout << "Vvedite a:";
    cin >> a;
    cout << "Vvedite b:";
    cin >> b;
    cout << "Vvedite h:";
    cin >> h;
    cout << "Vvedite n:";
    cin >> n;
    
    for (x = a; x <= b; x += h)       //цикл изменения х от а до b с шагом h
    {
        Y = (pow(x, 2) / 4 + (x / 2) + 1)*exp(x / 2); //вычисление Y(x)
        {
            r = S = 1.0;
            for (i = 1; i <= n + 1; i++)
            {
                r *= (x / 2) / i;
                S += (i*i + 1)*r; // вычисление S(x)
            }
        }
            printf("\n x= %8.2lf   S(x)= %8.5lf    Y(x)= %8.5lf    |Y(x)-S(x)|= %8.5lf", x, S, Y, fabs(Y - S));    //вывод результат для каждого шага   
    }
    _getch();
    return 0;
}
Может кому пригодится)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.01.2014, 16:58
Привет! Вот еще темы с ответами:

Вычисление степени матрицы, вычисления произведения двух матриц, вычисление суммы двух матриц - C++
Здравствуйте, помогите решить, пожалуйста: Заданы две квадратные матрицы А и В. Вычислить матрицу...

Вычисление суммы - C++
Здравствуйте , помогите написать программу пожалуйста. f=k k=6(0,7)7; a={2,3;7;-2;-4;9} g=f/\sum_{i=5}^{5} (a(i)/i) Благодарю.

Вычисление суммы - C++
Помогите вычислить сумму, пожалуйста, С++ \sqrt{1+\sqrt{2+\sqrt{3+... \sqrt{50}}}} редактор формул внизу страницы

Вычисление суммы - C++
Подскажите, пожалуйста, в чем ошибка. Условие задачи: Вычислить сумму 1+1/2+1/3+...+1/10. #include &lt;cstdlib&gt; #include &lt;iostream&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru