Форум программистов, компьютерный форум CyberForum.ru

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

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

Вычислить сумму ряда. - C++

23.01.2012, 14:02. Просмотров 739. Ответов 10
Метки нет (Все метки)

День добрый. Помогите пожалуйста написать програмку.

Вот задание.
http://s006.***********/i214/1201/83/a86d4a6e9fe2.jpg
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2012, 14:02     Вычислить сумму ряда.
Посмотрите здесь:

Вычислить сумму ряда - C++
Вычислить сумму ряда: - sum= 1+ 1/2^3+1/3^3...+1/50^3

Вычислить сумму ряда - C++
Вычислить сумму ряда \sum_{i=0}^{n}\frac{1}{i!}

Вычислить сумму ряда - C++
1−1:2+1:3−...+(−1)^(n+1n)

Вычислить сумму ряда - C++
Напишите программу, которая вычисляет сумму ряда: 1-1/3+1/5-1/7+1/9-.. и сравнивает полученное значение с PI/4(при суммировании достаточно...

Вычислить сумму ряда - C++
Вычислить сумму ряда: ln(1-x)= -(Ʃот n=1 до ∞) x^n/n = -(x+ x^2/2+ x^4/4+ ...) -1<=x<1 Примечание. x, количество членов...

Вычислить сумму ряда - C++
S = 1 - 1/3^3 + 1/5^3 - 1/7^3 + ... Очень нужна помощь!

Вычислить сумму ряда - C++
Составьте программу вычисления суммы:

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
23.01.2012, 16:03     Вычислить сумму ряда. #2
Ты бы хотел увидеть решение в виде скриншота на радикале?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <cmath>
 
int main(int argc, char *argv[]) {
  double epsilon = 0.0000001; // вот это надо вводить, но мне лень
  double etalon = 3.14159265 / (2 * sqrt(3));
  double result = 0;
  double intermediateResult = 1;
  for (int i = 0; fabs(intermediateResult) > epsilon; ++i) {
    result += intermediateResult;
    intermediateResult = (i % 2 ? 1 : -1) * 1./((3 + 2 * i) * (pow(3, i + 1)));
  }
  std::cout << "Etalon: "<< etalon << std::endl << "Result: " << result << std::endl;
}
ewenso
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 25
23.01.2012, 16:07  [ТС]     Вычислить сумму ряда. #3
double epsilon = 0.0000001; // вот это надо вводить, но мне лень

Вводить что?

П.с просто не понял как тут картинку закинуть.
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
23.01.2012, 16:42     Вычислить сумму ряда. #4
Прочитай задание внимательно.
epsilon это точность, которую и надо вводить.
ewenso
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 25
23.01.2012, 16:51  [ТС]     Вычислить сумму ряда. #5
Прочитал, вот как я понимаю это дело.
Мы вводим е потом происходят расчеты по большой формуле потом и по 2. и ответы должны быть одинаковы так?
Но,double epsilon = 0.0000001 это же уже введено, и я не вижу 1 формулу...просто я в этом практически не бум бум.
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
23.01.2012, 16:58     Вычислить сумму ряда. #6
Цитата Сообщение от ewenso Посмотреть сообщение
просто я в этом практически не бум бум.
Я заметил.

epsilon и есть точность, которую по заданию надо вводить.
Вот и вводи её, если надо. Мне лень.
ewenso
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 25
23.01.2012, 17:01  [ТС]     Вычислить сумму ряда. #7
Ок. это я понял, осилю.но вот вопрос который так и не понял, там же расчет идет по 2ум формулам, а вижу только 1.
Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
23.01.2012, 17:01     Вычислить сумму ряда. #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
25
26
27
28
29
30
31
32
33
#include <iostream>
#include <cmath>
using namespace std;
 
// Если компилятор не знает что такое M_PI, то расскомментировать следующую строку
// # define M_PI 3.14159265358979323846
 
double calc_beside( double );
 
int main() {
    double my_eps;
    cout << "Введите точность " << endl;
    cin >> my_eps;
    cout << "Сумма ряда равна " << calc_beside( my_eps ) << endl;
    cout << "Проверочное значение равно " << M_PI / ( 2 * sqrt( 3 ) ) << endl;
 
    return 0;
}
 
double calc_beside( double eps ) {
    unsigned int cnt = 1;
    double curr, val = 1.0;
 
    do {
        curr = 1.0 / ( ( 1.0 + cnt * 2 ) * pow( 3.0, cnt ) );
 
        cnt % 2 ? val -= curr : val += curr;
 
        ++cnt;
    } while ( curr >= eps );
 
    return val;
}
Консоль
Введите точность
0.0000001
Сумма ряда равна 0.9069
Проверочное значение равно 0.9069
ewenso
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 25
23.01.2012, 17:04  [ТС]     Вычислить сумму ряда. #9
Спасибо, но хотелось бы разобраться и с 1 вариантом, для знаний хоть каких то...
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
24.01.2012, 08:09     Вычислить сумму ряда. #10
Цитата Сообщение от ewenso Посмотреть сообщение
Ок. это я понял, осилю.но вот вопрос который так и не понял, там же расчет идет по 2ум формулам, а вижу только 1.
Раз "формула":
C++
1
double etalon = 3.14159265 / (2 * sqrt(3));
Два "формула":
C++
1
2
3
4
5
6
  double result = 0;
  double intermediateResult = 1;
  for (int i = 0; fabs(intermediateResult) > epsilon; ++i) {
    result += intermediateResult;
    intermediateResult = (i % 2 ? 1 : -1) * 1./((3 + 2 * i) * (pow(3, i + 1)));
  }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2012, 12:08     Вычислить сумму ряда.
Еще ссылки по теме:

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

Вычислить сумму ряда - C++
Напишите программу, которая принимает с клавиатуры число N и выводит на экран все числа от N до -N. Например, если введено число 3, то на...

Вычислить сумму ряда - C++
Прошу помощи

Вычислить сумму ряда - C++
Z = x - x^2/2+ x^3/3 - x^4/4 + … x^20/20

Вычислить сумму ряда - C++
По заданным числам n и a вычислить значение суммы: \sum_{i=1}^{n}i*a^i #include &lt;iostream&gt; #include &lt;cmath&gt; #define ll long...


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

Или воспользуйтесь поиском по форуму:
ewenso
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 25
24.01.2012, 12:08  [ТС]     Вычислить сумму ряда. #11
Спасибо большое.
Yandex
Объявления
24.01.2012, 12:08     Вычислить сумму ряда.
Ответ Создать тему
Опции темы

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