Форум программистов, компьютерный форум, киберфорум
Численные методы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 26

Не могу осилить метод Ньютона

23.09.2016, 21:07. Показов 1171. Ответов 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
32
33
34
35
36
37
38
#include <conio.h>
#include <math.h>
#include <iostream.h>
#define pi 3.14
 
double f(double x) {
 
    return   x*x-(cos(pi*x));
}
 
double f1(double x) {
 
    return   2*x+(1/x);
}
 
double f2(double x) {
 
    return   2+(-1/(x*x));
}
 
int main() {
    int n=0;
    double a,b,c,eps;
    cout<<"a="; cin>>a;
    cout<<"b="; cin>>b;
    cout<<"eps="; cin>>eps;
    if(f(a)*f2(a)>0) c=a;
    else c=b;
    do {
        c=c-f(c)/f1(c);
        n+=1;
    }
    while (fabs(f(c))>=eps);
        cout<<"c="<<c<<"\n";
        cout<<"n="<<n<<"\n";
        getch();
    return 0;
}
Изображения
 
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.09.2016, 21:07
Ответы с готовыми решениями:

Метод Ньютона (не могу понять одну вешь)
Здравствуйте, дано задание по методам Ньютона. Его я уже сделал, но входе выполнения задания я очень много гуглил и нашел такой пример...

Не могу осилить STP16CP05
всем привет, прошу помощи разобраться с STP16CP05... Предыстория такова: банальная подсветка светодиодов, контроллер stm32F103CBT6, к...

Не могу осилить условия!
Добрый вечер! Подскажите, почему не работает должным образом условие: Ставил всяко, итог один проверяет только одно условие.(Если же...

5
Эксперт по математике/физике
 Аватар для jogano
6360 / 4067 / 1512
Регистрация: 09.10.2009
Сообщений: 7,550
Записей в блоге: 4
23.09.2016, 22:47
Если вы применяете метод сжимающих отображений для решения уравнения f(x)=0, то каждый раз должны вычислять функцию https://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi \left(x \right)=x-\frac{f\left(x \right)}{f'\left(x \right)}, пока после очередной итерации не станет выполнено https://www.cyberforum.ru/cgi-bin/latex.cgi?\left| \varphi \left(x \right)-x\right|<\varepsilon
У вас на рисунке одно уравнение (одна функция f), а в коде другая: https://www.cyberforum.ru/cgi-bin/latex.cgi?x^2-\cos \left(\pi x \right)
Ваша f1(x) (наверное) производная f(x). Но https://www.cyberforum.ru/cgi-bin/latex.cgi?\left( x^2-\cos \left(\pi x \right)\right)'=2x+\pi \sin\left(\pi x \right),а не то, что вы написали. Функция f2(x) не понятно, что означает. Вторая производная, которая здесь не нужна?
Короче, расшифруйте обозначения, чем другим ковыряться в коде и угадывать - напишите математические формулы, по которым вы делаете.
0
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 26
24.09.2016, 07:56  [ТС]
Добавлено через 1 минуту
Само уравнение: acos(x) - sqrt(1.0 - 0.3 * x * x * x);
1-я производная: 0.45 * x * x / sqrt(1 - 0.3 * x * x * x) - 1 / sqrt(1 - x * x);
2-я производная: x*(0.2*pow(x,3)/(-0.3*pow(x,3)+1)*3/2 + 0.9/(-0.3*pow(x,3) +1) - 1/(pow(-x,2)+1)*3/2
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,493
24.09.2016, 14:29
slater, для набора математических выражений пользуйтесь Редактором формул (расположен ниже на странице).
Как работать в Редакторе формул...
0
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 26
24.09.2016, 16:13  [ТС]
Благодарю! Буду разбираться!
0
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 26
24.09.2016, 17:44  [ТС]
Извиняюсь за неточность!

Вот само задание: Решить уравнение методом Ньютона.

Приложил две производные, решение которых получил на онлайн-калькуляторе и само уравнение. Если не очень сложно и вы располагаете временем, напишите, пожалуйста, формулы для производных, если мои не верны.

Вот верный код С++ (но неверные производные)

Кликните здесь для просмотра всего текста
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 <conio.h>
#include <math.h>
#include <iostream>
#define pi 3.14
using namespace std;
 
double f(double x) {
 
    return   acos(x) - sqrt(1.0 - 0.3 * x * x * x);
}
 
double f1(double x) {
 
    return  0.45 * x * x / sqrt(1 - 0.3 * x * x * x) - 1 / sqrt(1 - x * x);
}
 
double f2(double x) {
 
    return   0.9 / (1 - 0.3*pow(x, 3)) - 3 / 2 * (pow(x, 2) + 1) + 0.3*pow(x, 4) / 1 - 0.3*pow(x, 3);
}
 
int main() {
    int n = 0;
    double a, b, c, eps;
    cout << "a="; cin >> a;
    cout << "b="; cin >> b;
    cout << "eps="; cin >> eps;
    if (f(a)*f2(a)>0) c = a;
    else c = b;
    do {
        c = c - f(c) / f1(c);
        n += 1;
    } while (fabs(f(c)) >= eps);
    cout << "c=" << c << "\n";
    cout << "n=" << n << "\n";
    
    system("pause");
    return 0;
}
Миниатюры
Не могу осилить метод Ньютона   Не могу осилить метод Ньютона  
Изображения
 
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.09.2016, 17:44
Помогаю со студенческими работами здесь

Не могу осилить алгоритм проги
Радисту назначены два сеанса связи продолжительностью T1 и T2 соответственно. За время этих сеансов требуется передать максимально ...

Логическая задача.Не могу осилить
Дана задача: По подозрению в совершенном преступлении задержали Брауна,Джона и Смита.Один из них был уважаемым в городе стариком,другой...

не могу осилить два примера...
Помогите дорешать контрольную, осталось два задания: 1) Имеется массив А из N произвольных чисел A(N), среди которых есть...

Что-то я хук не могу осилить...
Раньше ни когда не пробовал работать с хуками (и с DLL тоже), но тут возникла необходимость поставить хук на WM_MOUSEMOVE и...

Не могу осилить std::cout
Подскажите плз, почему у меня может не работать cout и std::cout. Пробую в Dev-C++ 5.11 #include &lt;iostream&gt; #include...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru