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

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

Войти
Регистрация
Восстановить пароль
 
Grind
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 19
#1

Ряд сумм и производных - C++

14.10.2012, 00:02. Просмотров 358. Ответов 8
Метки нет (Все метки)

Дано натуральное число N, вычислить ∏(2+(1/i!)) и Ʃ((1+i)/i!),i=от 1 до n.
Я написал одну прогу на C++, но она неправильно сумму и производное считает.Помогите разобраться плз.По-моему факториал всю картину портит, не знаю как с ним разобраться
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
 #include<iostream.h>
 #include<math.h>
 void main ()
 {
 double N,S,P,f=1;
 int i;
 char Y;
 do
 {
 S=0,i=1,P=1;
 cout<<"N=";
 cin>>N;
 for(i=1;i<=N;i++)
 {
 f=f*i;
 S=S+((1+N)/f);
 P=P*(2+(1/f));
 }
 cout<<"S="<<S<<'\n'<<"P="<<P<<'\n';
 cout<<"Continue?Y|N"<<'\n';
 cin>>Y;
 }
 while (Y=='y'||Y=='Y');
 }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2012, 00:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ряд сумм и производных (C++):

Вычисление приближенного значения tan(x) через ряд Тейлора/ряд Маклорена - C++
Привет, CF. Задача: Вычисление приближенного значения tan(x) через ряд Тейлора/ряд Маклорена Проблема: не совпадают результаты...

Вычисление функции через разложение в ряд (Ряд Тейлора) - C++
Привет всем. Задание такого плана: Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора,...

вычислить функцию с помощью разложения в ряд.(Ряд Тейлора) - C++
Нужно написать программу по Ряду Тейлора.

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

Сравнение производных классов - C++
Друзья! Пусть у меня есть базовый класс S. У него есть два наследника A и B. Как мне скидывать, например в set, указатели (шаредпэтэры...

Длинная арифметика производных - C++
можете мне написать код на с++ или алгоритм? заранее спасибо

8
JlightenDev_C++
62 / 62 / 7
Регистрация: 12.08.2012
Сообщений: 150
14.10.2012, 00:38 #2
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
#include <iostream>
#include <math.h>
 
 using namespace std;
 
 int  main (){
 double N, S, P;
 int i;
 char Y;
 do
 {
 S = 0, i = 1, P = 1;
 cout << "N = ";
 cin >> N;
 for(i = 1; i <= N; i++)
 {
 double factorial = N;
 for(double l = 1, k = 0; l < N; l++){
 k = (N - l);
 factorial = factorial * k;
 }
 S = S+((1 + N)/ factorial);
 P = P*(2 + (1 / factorial));
 }
 cout << "S = " << S << '\n' << "P = " << P << '\n';
 cout << "Continue? Y|N" << '\n';
 cin >> Y;
 }
 while (Y == 'y' || Y == 'Y');
 }
0
Grind
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 19
14.10.2012, 00:46  [ТС] #3
хммм, считает оно неправильно когда ввожу 2 сумма должна =3,5, а произведение 7,5.А у тя при этом 3 и 6.25.
0
JlightenDev_C++
62 / 62 / 7
Регистрация: 12.08.2012
Сообщений: 150
14.10.2012, 01:29 #4
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
#include <iostream>
#include <math.h>
 
 using namespace std;
 
 int  main (){
 double N, S, P;
 int i;
 char Y;
 do
 {
 S = 0, i = 1, P = 1;
 cout << "N = ";
 cin >> N;
 for(i = 1; i <= N; i++)
 {
 double factorial = i;
 for(double l = 1, k = 0; l < N; l++){
 k = (N - l);
 factorial = factorial * k;
 }
 S = S+((1 + i)/ factorial);
 P = P*(2 + (1 / factorial));
 }
 cout << "S = " << S << '\n' << "P = " << P << '\n';
 cout << "Continue? Y|N" << '\n';
 cin >> Y;
 }
 while (Y == 'y' || Y == 'Y');
 }
Смотри.
0
Grind
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 19
14.10.2012, 01:59  [ТС] #5
хззззззз

Добавлено через 2 минуты
Книга1.xls
это я посмтрел как в екселе будет,а на с++ не все то же самое.
0
Grind
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 19
14.10.2012, 02:35  [ТС] #6
это паезда,какая-то глюконутая задачка

Добавлено через 42 секунды
Добавлено через 40 секунд
Добавлено через 28 минут
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
#include<iostream.h>
#include<math.h>
int main ()
{
    double N,S,P,f=1;
    int i;
    char Y;
    do
    {
        S=0,i=1,P=1;
        cout<<"N=";
        cin>>N;
        for(i=1;i<=N;i++)
        {
            f=f*i;
            S=S+((1+i)/f);
            P=P*(2+(1/f));
        }
        cout<<"S="<<S<<'\n'<<"P="<<P<<'\n';
        cout<<"Continue?Y|N"<<'\n';
        cin>>Y;
    }
        while (Y=='y'||Y=='Y');
}
Вот пашет,но правильно считает другие значения,только при перезапуске программы, а при продолжении не хочет правильно высчитывать.
0
snw
10 / 10 / 0
Регистрация: 11.10.2012
Сообщений: 93
14.10.2012, 14:19 #7
Конечно не будет правильно считать при продолжении, и сумма, и факториал, и тем более произведение, уже не нулевые.
1
Grind
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 19
26.10.2012, 13:15  [ТС] #8
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
#include<iostream.h>
#include<math.h>
int main ()
{
    double N,S=0,P=1,f=1;
    int i=1;
    char Y;
    do
    {
        S=0,i=1,f=1,P=1;
        cout<<"N=";
        cin>>N;
        for(i=1;i<=N;i++)
        {
            f=f*i;
            S=S+((1+i)/f);
            P=P*(2+(1/f));
        }
        cout<<"S="<<S<<'\n'<<"P="<<P<<'\n'; 
        cout<<"Continue?Y|N";
        cin>>Y;
    }
    while (Y=='y'||Y=='y');
}
вроде пашет правильно
0
snw
10 / 10 / 0
Регистрация: 11.10.2012
Сообщений: 93
26.10.2012, 13:21 #9
помните всегда, даже возьмите за правило, что переменные надо инициализировать правильными начальными значениями.
0
26.10.2012, 13:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.10.2012, 13:21
Привет! Вот еще темы с ответами:

Файлы и объекты производных классов - C++
Вопрос следующий: имеется два класса, базовый и производный. В файл бинарно записывается объект производного класса через указатель на...

Использование базовых и производных классов - C++
Не могу решить задачу с классами помогите с решением. Создать класс String – строка. Определить функции присваивания одной строки...

Итерационное вычисление частных производных - C++
доброго времени суток в задачах по численным методам столкнулся с необходимостью вычисления частных производных сами вычисления &quot;в...

Множественное наследование. Построение производных классов - C++
Необходимо построить иерархию классов согласно схемы наследования. Каждый класс должен содержать инициализирующий конструктор и функцию...


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

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

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