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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.86
jenya5455
1 / 1 / 0
Регистрация: 07.11.2012
Сообщений: 53
#1

Вычислить бесконечную сумму с заданной точностью - C++

18.03.2013, 20:30. Просмотров 3126. Ответов 6
Метки нет (Все метки)

Вычислить бесконечную сумму с заданной точностью E(E>0) . Считать, что требуемая точность достигнута, если вычислена сумма нескольких первых слагаемых, и очередное слагаемое оказалось по модуле меньше, чем , E — это и все последующие слагаемые можно уже не учитывать. Вычислить по формуле

Посмотрите код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <math.h>
 
using namespace std;
 
int main (){
    float E;
    int i,n;
    i=1;
   n=10;
    while (i<n){
          E=1/(i*(i+1));
          
          if (E<fabs(E)){
          cout <<"E = "<<E<<endl; break;       
                      } 
          i++;
          }
    system ("pause");
    return 0;
    }

и есть такой

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
#include <iostream>
#include <math.h>
#include <stdlib.h>
 
using namespace std;
 
int fabs (int e, int i, int s){
    e=rand()%100;
    
    while (e>fabs(s)){
          s+=e;
          i++;
          }
    cout << "MODUL Summi = "<<fabs(s)<<" Summa = "<<s<<endl;
    return 0;}
    
    int main (){
        int g;
        int i;
        int h;
        
        fabs(g,i,h);
        
        system ("pause");
        }
0
Изображения
 
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.03.2013, 20:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычислить бесконечную сумму с заданной точностью (C++):

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

Вычислить бесконечную сумму с заданной точностью - C++
Добрый день, укажите пожалуйста на ошибку в коде.. Условие: Вычиcлить беcкoнечную cумму c заданнoй тoчнoстью ε(ε &gt; 0). Cчитать что...

Вычислить бесконечную сумму с заданной точностью - C++
Вычислить бесконечную сумму с заданной точностью eps (eps&gt;0). Считать, что требуемая точность достигнута, если вычислена сумма нескольких...

Вычислить бесконечную сумму с заданной точностью - C++
Всем привет, при решении задачи возникли трудности: при вводе значения &quot;ε&quot; программа ничего не делает, после введения значения и нажатия...

Циклы: вычислить бесконечную сумму с заданной точностью - C++
Вычислить бесконечную сумму с заданной точностью е(е&gt;0).Считать что требуемая достигнута, несколько первых слагаемых и очередное слагаемое...

Вычислить бесконечную сумму ряда с заданной точностью - C++
Вычислить бесконечную сумму ряда с заданной точностью e(e&gt;0) \sum_{i=1}^{+\propto }\frac{{(-1)}^{i+1}}{{3}^{2*i-1}} У знака...

6
ViktorKozlov
133 / 125 / 2
Регистрация: 13.12.2012
Сообщений: 293
18.03.2013, 20:47 #2
Дак второй вариант вроде работает
0
jenya5455
1 / 1 / 0
Регистрация: 07.11.2012
Сообщений: 53
18.03.2013, 20:57  [ТС] #3
Правельно? или нет)) работает
0
ViktorKozlov
133 / 125 / 2
Регистрация: 13.12.2012
Сообщений: 293
18.03.2013, 21:25 #4
Так проверь.. У меня только на fabs ругался, т.к. если ему int передать, то будет неоднозначный вызов. Но можно написать fabs((float)s), и будет работать. Только будет ли работать правильно, это уже вопрос реализации алгоритма
1
zss
Модератор
Эксперт С++
6532 / 6094 / 2007
Регистрация: 18.12.2011
Сообщений: 15,851
Завершенные тесты: 1
18.03.2013, 21:49 #5
E=1/(i*(i+1));
при i>0 ВСЕГДА равно нулю, т.к. целое делится на целое,
то результат тоже целый
C++
1
2
3
4
5
6
7
8
9
10
11
12
double Mysum(double eps)
{
    double an,i,s;
    an=0.5;s=an;i=2.;
     while(an>eps)
     {
          an=1.0/i/(i+1.0);
          s+=an;
          i++;
      }
      return s;
}
0
jenya5455
1 / 1 / 0
Регистрация: 07.11.2012
Сообщений: 53
18.03.2013, 21:58  [ТС] #6
а там так и должно получаться всё по 0.5 , я просто в матешке не селён

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
#include <iostream>
#include <math.h>
#include <stdlib.h>
 
using namespace std;
 
double Mysum(double eps)
{
    double an,i,s;
    an=0.5;
    s=an;
    i=2;
     while(an>eps)
     {
          an=1.0/i/(i+1.0);
          s+=an;
          i++;
      }
      cout <<"E = "<< an << "\nSUMMA fabs = "<<fabs(an)<<"\nSUMMA = "<<s<<endl;
      return s;
}
          
    int main (){
        double E;
        //int S;
        
        Mysum(E);
        
        system ("pause");
        return 0;
        }
0
zss
Модератор
Эксперт С++
6532 / 6094 / 2007
Регистрация: 18.12.2011
Сообщений: 15,851
Завершенные тесты: 1
19.03.2013, 08:34 #7
C++
1
2
3
4
5
6
7
8
int main ()
{
        double E;
        cin>>E;
        cout<<Mysum(E);
        system ("pause");
        return 0;
        }
0
19.03.2013, 08:34
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.03.2013, 08:34
Привет! Вот еще темы с ответами:

Вычислить бесконечную сумму ряда с заданной точностью е(е>0) - C++
Помогите пожалуйста вычислить бесконечную сумму ряда с заданной точностью е(е&gt;0)

Вычислить бесконечную сумму ряда с заданной точностью - C++
Вычислить бесконечную сумму ряда с заданной точностью e (e&gt;0)

Вычислить бесконечную сумму ряда с заданной точностью - C++
Вычислить бесконечную сумму ряда с заданной точностью е(е&gt;0) \sum_{1}^{\propto }1/3^i+4^i

Вычислить бесконечную сумму ряда с заданной точностью е (е>0) - C++
Помогите пожалуйста. Вычислить бесконечную сумму ряда с заданной точностью е (е&gt;0). \sum_{i=1}^{\infty}\frac{2}{i!}


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

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

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