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

Решение нелинейного уравнения методом итерации

01.09.2014, 18:43. Показов 1746. Ответов 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
40
41
42
43
//Метод итерации
 
 
#include <iostream>//for cout and cin
#include <conio.h>//lib for _getch()
#include <time.h>// lib for system time()
 
using namespace std;
double RangedRand(double range_min, double range_max)
{
    srand(time(NULL));//rand псевдослучайные числа , эта функция берет за основу текущее время 
    return rand() / (RAND_MAX + 1)*(range_max - range_min) + range_min;
}
 
double funq(double x)
{
    return 2 * sin(x) / x;
    
    
}
int main(void){
    int n=0;// кол итераций
    double a, b, Eps,Epsx,y; // а,б промежуток , Eps погрешность с которой нужно найти корень, Epsx текущаю погрешность итерации
    cout << "vvedi a" <<endl;
        cin >> a;
    cout << "vvedi b" <<endl;
        cin >> b;
    cout << "vvedi Eps" << endl;
        cin >> Eps;
        double x =RangedRand(a, b);//рандомное вещественное число на отрезке а.б
        do {
            y = funq(x);
            Epsx = fabs(x - y);
            cout << "it № " << ++n << " y= " << y << "; x= " << x << "; Epsx= " << Epsx << endl;
            x = y;
        
        } while (Eps <= Epsx);
 
 
 
    _getch();// ожидание ввода символа
    return 0;
}
Проблема в том ,что не все функции работают , мб я неправильно понял алгоритм вычисления
1. Присваиваем х[0]= любому числу на промежутке а до б
2. Присваиваем х[1] = значению функции при x[0]
3. Сравниваем текующую погрешность Epsx = fabs(x[0] - x[1]); c необходимой Eps

Наткнулся на то что вроде как нужно привести к нужному виду уравнение с начало , возможно кто может дать пример уравнения с промежутком и погрешностью и ответом программы для того чтобы протестировать код .
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.09.2014, 18:43
Ответы с готовыми решениями:

Решение нелинейного уравнения методом простой итерации
Помогите, пожалуйста! Нужно разработать программу для решения нелинейного уравнения методом простой...

Нахождение корня нелинейного уравнения методом итерации
Прошу помочь разобраться в ошибке. Есть рабочий код с++ для нахождения корня методом итерации...

Составить программу нахождения корней нелинейного уравнения методом простой итерации с точностью вычисления E
Помогите Составить программу нахождения корней нелинейного уравнения методом простой итерации с...

Решение нелинейного уравнения методом перебора
Решить уравнение sin(1/x)=0 методом перебора на промежутке x = .

1
0 / 0 / 0
Регистрация: 16.10.2012
Сообщений: 24
03.09.2014, 18:29  [ТС] 2
Тема еще актуальна
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.09.2014, 18:29
Помогаю со студенческими работами здесь

Решение нелинейного уравнения методом итераций
Я не знаю куда кидать, кто поможет сделать эту работу Программа должна вычислять корень...

Решение нелинейного уравнения методом секущих
Окажите помощь,пожалуйста!! Помогите написать на Visual Studio 14.0, Нужно решить нелинейное...

Решение нелинейного уравнения методом итераций в с++
Помогите пожалуйста решить нелинейное уравнение x^2-2x-1 = 0 промежуток от 0 до 3. Находил...

Решение нелинейного уравнения методом простых итераций
Здравствуйте, помогите пожалуйста написать программу для решения нелинейного уравнения методом...


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

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

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