|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
09.12.2021, 13:53 | #1 |
Пользователь
Регистрация: 09.12.2021
Сообщений: 10
|
Метод деления отрезка пополам C++
Здравствуйте дорогие форумчане, нужна ваша помощь. Необходимо реализовать нахождение корней уравнения методом деления отрезка пополам.
Я составил код нахождение корней уравнения методом Ньютона. Как его изменить, чтобы получился методом деления отрезка пополам? Помогите пожалуйста . Язык программирования C++. Компилятор Dev-C++ Код нахождение корней уравнения методом Ньютона: Код:
|
09.12.2021, 15:49 | #2 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,550
|
Слукавил "Я нашёл в сети (сдул у одногрупника)" .... На мой взгляд, метод дихотомического деления - самый простой метод нахождения корней.
Вернусь из гастромона - так и быть, помогу. Но наверно найдутся раньше. Предварительно должен быть найден интервал локадизации корня (корней) . Последний раз редактировалось digitalis; 09.12.2021 в 15:51. |
09.12.2021, 16:30 | #3 |
Пользователь
Регистрация: 09.12.2021
Сообщений: 10
|
digitalis, Да, признаюсь, мне немного помогли. Так же у меня есть код реализованный с помощью метода деления отрезка пополам, но мне нужен точно такой же вид как при реализации метода Ньютона.
Вот код: Код:
|
09.12.2021, 20:02 | #4 | |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,550
|
Я не понимаю, что значит
Цитата:
Другой вопрос: тут уже задан интервал локализации корня. Обычно такого подарка задача юзверю не делает. Интервал ищут перебором по сетке или "вручную", обдумывая заданную функцию. А если интервал задан неверно? Будет искать до опупения. А если корней >1 ? Найдёт один, а там - гори оно гаром? В данном случае - везёт: корень один х=-1.0 |
|
09.12.2021, 22:50 | #5 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
buk_bear, возьмите второй код, практически весь код из main вынесите в функцию "double getRoot2(double a, double b)" и по аналогии с вызовом getRoot из первого кода вызывайте с желаемыми интервалами.
А wolframalpha еще два корня нашел
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
09.12.2021, 23:00 | #6 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,550
|
Странно. Мы с Ёкселем прошерстили от -10 до 10 - дальше уходит в бесконечность. Мой кот Мурзик заинтересовался: а что это за корни?
|
09.12.2021, 23:11 | #7 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
digitalis, -1, 4, 5.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
10.12.2021, 11:40 | #8 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,550
|
Действительно. Проморгали 2 корня на плоской части кривой.
Ёксель поставлен в угол и лишён воскресной чарки. Кот предупреждён о неполном служебном соответствии. |
14.12.2021, 15:42 | #9 |
Пользователь
Регистрация: 09.12.2021
Сообщений: 10
|
Спасибо всем кто принимал участие в решении моего вопроса. Я нашёл решение
|
14.12.2021, 16:17 | #10 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
C++ - Метод деления отрезка пополам (работа с массивами) | Fazer77777 | Помощь студентам | 0 | 21.02.2015 14:34 |
метод деления отрезка пополам | relyativus | Помощь студентам | 1 | 09.12.2011 21:16 |
Метод деления отрезка пополам | Витяака | Помощь студентам | 2 | 23.12.2010 11:42 |
Метод деления отрезка пополам Delphi | lordve | Помощь студентам | 0 | 06.12.2009 23:57 |
Вычисление корня уравнения методом деления отрезка пополам | Absent | Помощь студентам | 12 | 25.11.2007 17:54 |