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

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

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

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

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

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

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

Вычислить сумму ряда. Где-то напутал знаки или формула ряда не правильная. Посмотрите свежим взглядом. - C++
Привет! Пишу простую контрольную, не могу понять, то ли я где-то со знаками туплю, то ли формула не корректна. Задание: Мое...

Вычислить сумму четных и сумму нечетных чисел натурального ряда от 1 до n - C++
18 задача 1 лаба После удара о поверхность Земли мяч движется вертикально вверх со скорость 15 м\с. Найдите координату мяча над...

Вычислить сумму четных и сумму нечетных чисел натурального ряда от 1 до N - C++
Вычислить сумму четных и сумму нечетных чисел натурального ряда от 1 до N. Не могу найти где ошибка ? #include <iostream> #include...

Вычислить сумму ряда - C++
Всем доброго вечера) Знаю что изи, но я пробую и что-то неверно считает, жду помощи) Сам пример: Дано натуральное число N. Вычислить

Вычислить сумму ряда - C++
Вычислить сумму ряда(приведен на изображении) с точностью ε. Сделать графическую интерпретацию результата.\ Как я понял вводятся 'x' и...

Вычислить сумму ряда - C++
\sum_{i=1}^{n}{(\sin(x))}^{i} Я не понимаю как это должно быть, функцию pow() не использовать

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
lemegeton
2924 / 1353 / 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;
}
1
ewenso
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 25
23.01.2012, 16:07  [ТС] #3
double epsilon = 0.0000001; // вот это надо вводить, но мне лень

Вводить что?

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

epsilon и есть точность, которую по заданию надо вводить.
Вот и вводи её, если надо. Мне лень.
1
ewenso
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 25
23.01.2012, 17:01  [ТС] #7
Ок. это я понял, осилю.но вот вопрос который так и не понял, там же расчет идет по 2ум формулам, а вижу только 1.
0
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
1
ewenso
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 25
23.01.2012, 17:04  [ТС] #9
Спасибо, но хотелось бы разобраться и с 1 вариантом, для знаний хоть каких то...
0
lemegeton
2924 / 1353 / 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)));
  }
1
ewenso
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 25
24.01.2012, 12:08  [ТС] #11
Спасибо большое.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2012, 12:08
Привет! Вот еще темы с ответами:

Вычислить сумму ряда - C++
\sum_{1}^{9}In(x+1)/(x+k)

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

Вычислить сумму ряда - C++
Добрый вечер. Ребята, помогите пожалуйста записать формулу в С++. Программа сама то написана, а вот формулу никак не получается вывести.

Вычислить сумму ряда - C++
Ребятушки, выручайте! Столкнулся с проблемой, не могу понять, как написать прогу, которая будит решать данное уравнение:...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
24.01.2012, 12:08
Ответ Создать тему
Опции темы

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