![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
marwell |
![]() ![]()
Сообщение
#1
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: ![]() ![]() ![]() |
Составить программу для решения нелинейного уравнения f(x)=0 методом половинного деления. В качестве f(x) взять функцию, указанную ниже. На выбранном интервале [a, b] корень должен быть единственным (отделенным). В качестве исходных данных, задаваемых в начале программы или вводимых из файла или с экрана, следует взять:
1) Границы интервала [a, b], на котором ищется корень; 2) Точность вычислений еps; В качестве результатов работы программы представить: 1) Корень уравнения; 2) Значение функции в корне; 3) Количество реально проведенных итераций; 4) График функции f(x). unit Unit1;Корень находит, проблема вот в чем: 1.Неверно считает количество итераций, всегда выдает равным единице. 2.проблема с графиком: я не понимаю, как, с какими данными его начать строить? буду рад помощи Сообщение отредактировано: marwell - 21.05.2010 10:51 |
![]() ![]() |
Ozzя |
![]()
Сообщение
#2
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата а с первым пунктом не можешь помочь? Что-то с алгоритмом не так. У меня выплевывает сразу из цикла |
marwell |
![]()
Сообщение
#3
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: ![]() ![]() ![]() |
Что-то с алгоритмом не так. У меня выплевывает сразу из цикла Есть функция f(x), есть интервал [a,b], есть условие, что на концах промежутка функция имеет разный знак: f(a)*f(b)<0. Требуется найти с заданной точностью eps корень этой функции. Поступаем так: выбираем середину отрезка [a,b]. Если в середине функция имеет тот же знак что и слева, то принимаем середину за новую левую границу, в противном случае - за правую. Повторяем до тех пор, пока отрезок не станет меньше eps. Правильно? |
![]() ![]() |
![]() |
Текстовая версия | 11.07.2025 2:04 |