Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 25.04.2016
Сообщений: 2
1

Нахождение всех действительных корней методом хорд

25.04.2016, 13:39. Показов 1815. Ответов 3
Метки нет (Все метки)

Нужно составить программу для нахождения всех действительных корней уравнения F(x)=0 методом хорд не более, чем за 20 итераций. Помогите, очень прошу )

Функция: x^5 - 5x^4 - 7x^3 + 77x^2 - 138x + 72
Отрезок: [-5; 4]
Точность E=0.0001

Заранее спасибо!
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.04.2016, 13:39
Ответы с готовыми решениями:

Уточнение корней нелинейного уравнения комбинированным методом хорд и касательных
Здравствуйте. У меня тема практики-"уточнение корней нелинейного уравнения комбинированным методом...

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

Нахождение корня методом хорд. Программа не компилируется.
Плиз Кто нибуть , почти решил программу и встрял чего то , кто может помочь доделать задание ?...

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

3
Эксперт С++
1605 / 936 / 778
Регистрация: 06.02.2016
Сообщений: 2,425
Записей в блоге: 30
25.04.2016, 18:54 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Задачу с форума переделал под ваш вариант. Должно работать
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
program pr;
function f(x:real):real;
begin
f:= (x*x*x*x*x) - 5*(x*x*x*x) - 7*(x*x*x) + 77*(x*x) - 138*x + 72;
end;
var xn,xk,p,e:real;
begin
e:=0.0001;
xn:=-5;
xk:=4;
repeat
p:=(f(xk)*xn-f(xn)*xk)/(f(xk)-f(xn));
if abs(f(p))<=e then
 begin
  writeln('x=',p:0:5,'  y=',f(p):0:5);
  exit;
 end;
if f(xn)*f(xk)>0 then xn:=p else xk:=p;
until abs((f(xk)*xn-f(xn)*xk)/f(xk)-f(xn)-p)<=e;
writeln('x=',p:0:5,'  y=',f(p):0:5);
end.
1
0 / 0 / 0
Регистрация: 25.04.2016
Сообщений: 2
25.04.2016, 19:42  [ТС] 3
Спасибо огромное! У самого ну никак ни получалось)
0
Модератор
8684 / 4338 / 2979
Регистрация: 17.08.2012
Сообщений: 13,806
27.04.2016, 01:42 4
Цитата Сообщение от RePoisn Посмотреть сообщение
составить программу для нахождения всех действительных корней уравнения
Действительных корней у уравнения, указанного в задании, четыре, причём один из корней двойной кратности: x1=-4, x2=1, x3=2 и x4,5=3
Цитата Сообщение от Peoples Посмотреть сообщение
Должно работать
Находит только один корень, тот самый, двойной кратности, x4,5=3. То есть, программа работает, но заданию не соответствует.
Цитата Сообщение от RePoisn Посмотреть сообщение
не более, чем за 20 итераций
Только на определение интервалов, на которых гарантированно находятся корни, ну если только сказочно повезёт, уйдёт никак не менее 5 итераций. По 5 итераций на каждый корень остаётся. Методом хорд с точностью 10-4? Ну-ну. Успехов в начинаниях. Задача, в том виде, в котором она приведена в топикстартере, неразрешима.

Кстати, Peoples, корень в Вашей программе находится за 8753 итерации, что, согласитесь, несколько больше, чем 20. Ещё одно несоответствие заданию.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.04.2016, 01:42

Нахождение корней уравнения методом простых итераций
Исходное уравнение : 3*x-14+exp(x)-exp(-x) = 0 Интервал,где находится корень : Решил...

Вычисление корней нелинейного уравнения методом хорд
Puporev, я походу своими просьбами тебя заколебал) у тебя есть готовое решение любого нелинейного...

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

Нахождение корня уравнения методом хорд
y=x^2-4


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

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

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