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

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

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

Найти сумму n членов ряда - C++

29.11.2014, 20:36. Просмотров 551. Ответов 18
Метки нет (Все метки)

Доброго времени суток, нужна помощь в написании программки:
Вот написал кусочек кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<iostream>
#include<math.h>
using namespace std;
 
int main()
{
int n;
float x,summa;
cout << "Введите длину ряда!!\n";
cin >> n;
cout << "Введите x : \n";
cin >> x;
summa= 0;
for (int i = 1; i<=n; i++)
{
  .....
}
cout << "Сумма ряда = : " << summa << endl;
return 0; 
}
Как расписать саму формулу в коде!!!
Вот условие:
Рассчитать сумму n членов ряда:
0
Изображения
 
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2014, 20:36
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Найти сумму n членов ряда (C++):

Подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда - C++
Добавлено через 10 часов 32 минуты Для ряда, члены которого вычисляются по формуле, соответствующей Вашему индивидуальному заданию,...

Найти сумму 12 членов ряда - C++
Помогите пожалуйста, буду очень благодарна Для решения использовать рекуррентную формулу. Найти сумму ряда с точностью 10 в -4 степени....

Найти сумму 15 членов ряда - C++
Найти сумму 15 членов ряда, в котором {a}_{n}=\frac{{n}^{lnn}}{{(lnn)}^{n}} Заранее спасибо!

Найти сумму 10 членов ряда - C++
Найти сумму 10 членов ряда http://www.fotolink.su/v.php?id=681f895a2a7d72af633fb78533570d39

Найти сумму k членов ряда - C++
Написание программы С++

Найти сумму 15 членов ряда - C++
Помогите написать программу пожалуйста. Найти сумму 15 членов ряда S=1+1/2*1/3+1/4*1/5+1/6*1/7+...

18
JIeIIIa
672 / 354 / 62
Регистрация: 23.05.2012
Сообщений: 6,385
29.11.2014, 20:55 #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
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
   int n, f=1, d=1;
   float x,summa, c=1;
   
   cout << "Введите длину ряда!!\n";
   cin >> n;
   cout << "Введите x : \n";
   cin >> x;
   summa= 1;
   for (int i = 2; i<=n; i++)
   {
       c *= x*x;
       d *= 2;
       f *= i-1;
       summa += c/(d*f);
   } 
   cout << "Сумма ряда = : " << summa << endl;
   return 0; 
}
1
AnonymC
1176 / 459 / 30
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
29.11.2014, 20:56 #3
Прошу
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
// cyber.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include "windows.h"
 
using namespace std;
 
int factorial(int number);
 
int main()
{
    int k, number=1;
    double x=0;
    double result=1;
    double xsquare = 2, numsquare=1;
    cout<<"Enter x: "; cin>>x;
    cout<<"Enter k: "; cin>>k;
    for(int i=1; i<k;i++, xsquare+=2, numsquare++, number++)
        result+=pow(x,xsquare)/pow(2,numsquare)*factorial(number);  
 
    cout<<"Result is: "<<result<<endl;
    system("pause");
    return 0;
}
 
int factorial(int number)
{
    int result=1;
    if (number==1) return 1;
    if (number==0) return 0;
    for(int i=1;i<number;i++)
        result*=i;
    return result;
}
0
JIeIIIa
672 / 354 / 62
Регистрация: 23.05.2012
Сообщений: 6,385
29.11.2014, 21:01 #4
^Tecktonik_KiLLeR, коль на то пошло, то 0! = 1
0
Tulosba
:)
Эксперт С++
4705 / 3240 / 297
Регистрация: 19.02.2013
Сообщений: 9,046
29.11.2014, 21:03 #5
C++
1
2
3
4
5
6
    double el = 1;
    for (int i = 0; i<n; i++)
    {
        summa += el;
        el *= (x*x)/(2*(i+1));
    }
0
AnonymC
1176 / 459 / 30
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
29.11.2014, 21:04 #6
Цитата Сообщение от JIeIIIa Посмотреть сообщение
f *= i-1;
это факториал?
0
zss
Модератор
Эксперт С++
6928 / 6490 / 2182
Регистрация: 18.12.2011
Сообщений: 17,105
Завершенные тесты: 1
29.11.2014, 21:04 #7
^Tecktonik_KiLLeR,
1. Я не вижу, где используется windows.h
2. Обратите внимание, например, на второй пост и в дальнейшем не вычисляйте
такие значения в лоб, если можно воспользоваться рекуррентными соотношениями.
Советую посмотреть вот эту тему
Вычисление функций разложением в ряд Тейлора.
0
Tulosba
29.11.2014, 21:04
  #8

Не по теме:

^Tecktonik_KiLLeR, факториал и степень тут в принципе не нужны

0
AnonymC
1176 / 459 / 30
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
29.11.2014, 21:04 #9
Цитата Сообщение от JIeIIIa Посмотреть сообщение
0! = 1
разве 0*0=1?
0
JIeIIIa
672 / 354 / 62
Регистрация: 23.05.2012
Сообщений: 6,385
29.11.2014, 21:05 #10
Цитата Сообщение от ^Tecktonik_KiLLeR Посмотреть сообщение
это факториал?
Он самый.
0
Tulosba
:)
Эксперт С++
4705 / 3240 / 297
Регистрация: 19.02.2013
Сообщений: 9,046
29.11.2014, 21:06 #11
JIeIIIa, упустили вариант для n = 0.

Добавлено через 44 секунды
Цитата Сообщение от ^Tecktonik_KiLLeR Посмотреть сообщение
разве 0*0=1?
0, умноженный на 0 будет 0. Но факториал нуля есть единица.
0
AnonymC
1176 / 459 / 30
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
29.11.2014, 21:06 #12
zss, ну если не ошибаюсь, считает правильно.
А про windows.h, у меня функция system() без него не работает
0
Kostяn
0 / 0 / 0
Регистрация: 06.02.2011
Сообщений: 8
29.11.2014, 21:10 #13
должно работать, если где-то не накосячил))
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
#include<iostream>
#include<math.h>
using namespace std;
 
int main()
{
int n,k,z,f;
float x,summa;
cout << "Введите длину ряда!!\n";
cin >> n;
cout << "Введите x : \n";
cin >> x;
summa= 0;
k=1;
for (int i = 2; i<=n; i=i+2)
{
f=1;
for (int i2=1; i2<k+1; ++i2) 
        f*=i2;
z=pow(2,k)*f;
summa += pow(x,i)/z;
k++;
}
summa +=1;
cout << "Сумма ряда = : " << summa << endl;
return 0; 
}
0
zss
Модератор
Эксперт С++
6928 / 6490 / 2182
Регистрация: 18.12.2011
Сообщений: 17,105
Завершенные тесты: 1
29.11.2014, 21:11 #14
Я не говорил, что не считает,
а о том, в частности, что считать 2*2 как pow(2,2)=exp(log(2.0)*2.0) некультурно.

А system определена в stdlib.h
1
JIeIIIa
672 / 354 / 62
Регистрация: 23.05.2012
Сообщений: 6,385
29.11.2014, 21:12 #15
Цитата Сообщение от Tulosba Посмотреть сообщение
упустили вариант для n = 0
Да я в принципе считал, что для n<=0 сумма не определена. Но так как ТС никакой проверки на корректность не делал, то дописал только вычисления.
Хотя... если для n=0 сумма =1, то ничего не упустил)))
1
29.11.2014, 21:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.11.2014, 21:12
Привет! Вот еще темы с ответами:

Найти сумму n членов ряда - C++
Вычислить: y=-(1+x)^2+(1+x)^4/2-(1+x)^6/4+.... ; (N слагаемых). void main() {int n,i,k=4,x,j=2,m,l; double sum=0,f=0; ...

Найти сумму членов ряда - C++
Найти сумму членов ряда , в котором an=n!/pow(n,sqrt(n). помогите сделать на с++

Найти сумму 15 членов ряда - C++
1.Вычислить z=summa(1.2*x, y-10).Вычислить оформить в виде функции. 2.Найти сумму 15 членов ряда общий член которого...

Найти сумму N членов ряда 1/i - C++
Данное целое число N ( &gt; 0). найти сумму 1 + 1/2 + 1/3 + ... + 1 / N ( действительное число).


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

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

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