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

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

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

Метод простой итерации - C++

01.03.2015, 21:13. Просмотров 481. Ответов 5
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <cmath>
using namespace std;
 
double f(double x)
{
    return (-2.5*pow(x, 3) + 0.25*pow(x, 2) - 3);
}
 
void main()
{
    setlocale(LC_ALL, "Russian");
    int i = 0; double fi = -3, fi1 = 0, e = 0.0001;
    while (abs(fi - fi1) > e)
    {
        fi1 = fi;
        fi = f(fi1);
    }
    cout << "Корень уравнения x^3-0.1*x^2+0.4*x+1.2=0 равен -0.90987" << fi << endl;
}
помогите найти ошибку. выводит -1.#IND
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.03.2015, 21:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Метод простой итерации (C++):

Метод простой итерации - C++
Помогите решить методом простой итерации уравнение вида x=f(x).Очередное приближение корня находится по формуле {x}_{n}=f({x}_{n-1});...

Метод простой итерации - C++
Найти приближенное решение уравнения x = f(x), где f(x) = α*exp(x), при α = 0, 2 методом простой итерации: xn+1 = f(xn). В качестве...

Метод простой итерации - C++
Найти решение уравнения x=f(x) методом Эйткена-Стеффенсона, в котором от заданного начального Xo три очередных приближения находятся по...

Метод простой итерации - C++
решение системы линейных уравнений методом простой итерации

Метод простой итерации - C++
Люди помогите пожалуйста очень нужно для курсачя, а в С++ не тум тум. Метод простой итерации найти все действительные корни...

Метод простой итерации - C++
Вот такая задача! Используя метод простой итерации, решить с точностью ε = 10 такие нелинейные системы уравнений. Помогите реализовать в...

5
saden
183 / 167 / 41
Регистрация: 27.01.2013
Сообщений: 788
01.03.2015, 21:37 #2
плохое стартовое значение.
на нем итерации будут расходиться
начинай не с 3, а с 0,9
0
zss
Модератор
Эксперт С++
6706 / 6268 / 2090
Регистрация: 18.12.2011
Сообщений: 16,357
Завершенные тесты: 1
01.03.2015, 21:39 #3
А проверять условие сходимости |f'(x)|<1 Вас не учили?
преобразуем уравнение к виду x3 = 0.1*x2-0.4*x-1.2
теперь извлекаем корень кубический
http://www.cyberforum.ru/cgi-bin/latex.cgi?x=\sqrt[3]{ 0.1*x^2-0.4*x-1.2}
Используем эту функцию

Хотя, да, как написал saden, можно попробовать искать в другом интервале.
0
igor_m
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 122
01.03.2015, 22:22  [ТС] #4
метод сходимости проверил аналитически. поменял функцию, поменял значение на -0,9. теперь выдает ответ 1
0
saden
183 / 167 / 41
Регистрация: 27.01.2013
Сообщений: 788
01.03.2015, 22:25 #5
попробуй как написал zss - это таки правильно.
также пробуй другие стартовые точки
0
igor_m
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 122
01.03.2015, 22:41  [ТС] #6
я и говорю, поменял. то, что брать в качестве стартовой точки, как-то вычисляется или поиск значения происходит методом подбора?
0
01.03.2015, 22:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.03.2015, 22:41
Привет! Вот еще темы с ответами:

Метод простой итерации - C++
Здраствуйте! Нужно реализовать в C++ метод простой итерации. #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;conio.h&gt; #include...

Метод простой итерации - C++
Помогите с рекурсией!!! Задача: Найти корень заданного уравнения методом простой итерации с заданной точностью. Напомним, что в этом...

Метод простой итерации - C++
Всем привет. Кто знаком с методом простой итерации??? Вот есть код, он вроде работает, но в итоге ничего не дает, в коде описаны...

Метод простой итерации - C++
Добрый день! нужна помощь, помогите пожалуйста с решением задачи Решить методом простой итерации уравнение вида х=Ф(Х). Очевидное...


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

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

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