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

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

Войти
Регистрация
Восстановить пароль
 
rudeeeboy
14 / 14 / 1
Регистрация: 08.11.2010
Сообщений: 172
#1

Метод итераций для уравнения - C++

05.12.2012, 12:42. Просмотров 731. Ответов 2
Метки нет (Все метки)

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <iostream>
#include <math.h>
using namespace std;
double e=2.7;
double q=0;
int gr1=-100, gr2=0;
double al;
double f (double x) //Функция
{
    x=(-2*cos(3*x)-pow(e,2*x)-1)/2; 
    return x;
};
double f2 (double x) //Функция
{
    x=x-al*(-2*cos(3*x)-pow(e,2*x)-1)/2;    
    return x;
};
double f1 (double x) //Производная
{
    x=3*sin(3*x)-pow(e,2*x);
    return x;
};
 
double iter (double a, double e)
{
    int k=0;
    double x0, x1;
    x0=a;
    x1=f(x0);
    gr1=f1(gr1);
    gr2=f1(gr2);
    al=gr2/gr1;
    if(1-al*f1(x1)<1);
    cout<<"Metod shoditsya"<<endl;
    do
    {
        //cout<<k<<x1<<x0<<endl;
        x0=x1;
        x1=f2(x0);      
        k++;
    }
    while ((fabs(x1-x0))>=e);
    return x1;
};
 
 
int main()
{
    setlocale(LC_ALL,"Russian");
    double a=2.0;
    double e;
    cout<<"Vvedite tochnost:"<<endl;
    cin>>e;
    printf("| %34.20f    | \n", iter(a, e));
    system("PAUSE");
}
как правильно проверить на сходимость?

Добавлено через 15 часов 3 минуты
разраз
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.12.2012, 12:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Метод итераций для уравнения (C++):

Метод итераций для развязывания нелинейного уравнения - C++
- развязать заданое уравнение с точностью е = е (i – 1) / 10^(-3), і = 1, 2, ..., 4; e0 = 0.01 методом итераций. Прикинул немного,но...

Метод простых итераций для одного уравнения - C++
arccos(x) - sqrt(1-0.3x^3) = 0 Отрезок от +приближенное значение корня 0.5629 Для метода итераций получается, что ...

Метод Ньютона и итераций для нелинейного уравнения - C++
Всем доброго времени суток) Помогите реализовать программу на С++ решающую уравнение 2x-2*x2-1=0 методом итерации и методом Ньютона: ...

Посчитать количество проведенных итераций (метод простых итераций, Pascal -> C++) - C++
перевести из паскаля в С++ program method_of_simple_iteration; uses crt; var a:array of real; b,c:array of real; ...

Написать функцию для решения уравнения методом итераций - C++
Решить уравнение методом итераций. arccos x-sqrt(1-0,3*{x}^{3})=0 Отрезок, содержащий корень: Точное значение: 0,5629. Уравнение...

Метод простых итераций для СЛАУ - C++
Здравствуйте! Пытаюсь реализовать метод простых итераций. Все функции, которые работают нормально, кроме самих итераций. Не могу понять,...

2
-=ЮрА=-
Заблокирован
Автор FAQ
05.12.2012, 13:23 #2
Цитата Сообщение от rudeeeboy Посмотреть сообщение
if(1-al*f1(x1)<1);
* * cout<<"Metod shoditsya"<<endl;
Цитата Сообщение от rudeeeboy Посмотреть сообщение
как правильно проверить на сходимость?
- логически если метод сходиться то
а) достигается значение х при котором верно равенство
Цитата Сообщение от rudeeeboy Посмотреть сообщение
x=(-2*cos(3*x)-pow(e,2*x)-1)/2;
б) итераций конечное число, т.е этот цикл
Цитата Сообщение от rudeeeboy Посмотреть сообщение
while ((fabs(x1-x0))>=e);
имеет выход
0
rudeeeboy
14 / 14 / 1
Регистрация: 08.11.2010
Сообщений: 172
05.12.2012, 16:18  [ТС] #3
так в том и дело, если я задаю точность Е=0.001, он мне не даёт ответ
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.12.2012, 16:18
Привет! Вот еще темы с ответами:

Метод простых итераций для СЛАУ - C++
Помогите пожалуйста! Нужно реализовать метод простых итераций для решения СЛАУ дана вот такая матрица -0.95 -0.06 -0.12 0.14 ...

Метод простых итераций для СЛАУ - C++
Прошу помочь с написанием МПИ для СЛАУ на C. Каким образом выразить из AX=b ур-е X=BX+C, в которое подставлять начальное приближение? И по...

Метод простых итераций для СЛАУ - C++
Доброго времени суток всем!!! решаю СЛАУ методом простых итераций, проблема вот в чем: не могу понять, как сделать расчет по к-ым...

Метод простых итераций для решения СЛАУ - C++
Здравствуйте. Попытался сделать программу для решения СЛАУ методом простых итераций. Не работает. Вернее работает неправильно. Помогите...


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

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

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