0 / 0 / 0
Регистрация: 16.09.2014
Сообщений: 10
1

Задание на ряды: программа зацикливается при вводе некоторых значений

03.10.2014, 18:27. Показов 649. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, решал вузовское задание "на дом". Написал код. Однако при вводе некоторых значений программа зацикливается. В чём может быть ошибка (предполагаю, дело в eps)? Корректно ли вообще такое решение? Или всё же зацикливание возможно даже при правильном решении?

Вот задание:
Название: 1.gif
Просмотров: 24

Размер: 237 байт Название: 2.gif
Просмотров: 24

Размер: 541 байт

Вот код:
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
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main()
{
    setlocale(LC_CTYPE,"");
    float x, sum=0, eps, elem;
    int n=0;
    cout<<"Введите х (x должен удовлетворять условию |x|<1, иначе повторите попытку):"<<endl;
    do{
        cin>>x;
    }while(!(fabs(x)<1));
    cout<<"Введите eps"<<endl;
    cin>>eps;
    elem=x;
    while(fabs(elem)>eps){
        sum+=elem;
        n++;
        elem=pow(-1,n)*elem*x*x/2*n+1;
    }
    cout<<x<<" "<<sum<<" "<<eps<<endl;
    cout<<atan(x);
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.10.2014, 18:27
Ответы с готовыми решениями:

При вводе символа программа зацикливается
Я пытался создать программу, которая при вводе отрицательного или типа не int выводит ошибку и...

Программа зацикливается при вводе матрицы
Здравствуйте. Помогите, в программе какая то ошибка, не могу найти. Почему-то зацикливается при...

Программа зацикливается при вводе некорректных данных
Доброго дня. Уже искал по форуму, нашел много похожих тем, но предложенные там решения, в...

При вводе слишком большого числа программа зацикливается
При вводе слишком большого числа идет зацикливание(вроде так)помогите исправить #include...

1
205 / 181 / 112
Регистрация: 15.03.2014
Сообщений: 392
03.10.2014, 19:42 2
TARDOKKBN, Ваше решение неверно.
В цикле на каждой итерации нужно рассчитывать текущий элемент.
1) x^2 / 3
2) x^3 / 5
3) x^5 / 7
...
n) [ x^( 2n + 1 ) ] / [ 2 * n + 1 ]

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
37
38
39
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main() {
 
    double x, eps;
 
    cout << "Введите х ( x должен удовлетворять условию |x|<1, иначе повторите попытку ):" << endl;
 
    do {
        cin >> x;
    } while ( !( fabs( x ) < 1 ) );
 
 
    cout << "Введите eps" << endl;
    cin >> eps;
    eps = fabs( eps );
 
    int sign = 1;
    double current = x, sum = x, numerator = x, denominator = 1;
 
    // если числа с плавающей точкой сравнивать напрямую, то в некоторых случаях можно прийти к неверным результатам
    while ( fabs( current ) > eps ) {
        numerator *= x * x;
        denominator += 2;
        current = numerator / denominator;
 
        sign *= -1;
        sum += sign * current;
    }
 
    cout << "Аргумент x = " << x << endl;
    cout << "Сумма ряда = " << sum << " точность вычислений = " << eps << endl;
    cout << "Арктангенс = " << atan( x ) << endl;
 
    return 0;
}
0
03.10.2014, 19:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.10.2014, 19:42
Помогаю со студенческими работами здесь

При вводе в переменную нетипичного ей символа программа зацикливается
Проблема в том, что если ввести в программу символ отличный от цифры то программа зацикливается, а...

Зацикливается программа при вводе буквы, которую уже вводили
Всем привет! Подскажите, пожалуйста, почему при вводе буквы, которую уже вводил, игра зацикливается...

При открытии консоли и вводе некоторых данных, программа выбивает ошибку, белое окно, типа закрыть программу
При открытие консоли и вводе некоторых данных, резко выбиввет ошибку) белое окно, типа закрыть...

Зацикливается при вводе
Admin.h: #include&lt;string&gt; using namespace std; class Admin { string Login;//Логин...

Программа падает при вводе значений
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; float ex(int a,int nn); float fi(int...

Программа вылетает при вводе значений
вроде прохожу си второй год и проги писал гораздо сложней, а тут реально туплю... ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru