Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
2 / 2 / 1
Регистрация: 26.11.2012
Сообщений: 102

Уточнение корней уравнения методами половинного деления, хорд и касательных

04.10.2013, 12:20. Показов 2846. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят помогите решить задачку.
написать алгоритм уточнения корней методами половинчатого деления,хорд и касательных комбинированные с точность e= 10^(-4)
sqrt(x)-2cosx=0 прицепи половин. деления я сделаю. только не знаю как писать методами хорд и касательных и как это все соединить. помогите пожалуйста, последний зачет остался или хана мне.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.10.2013, 12:20
Ответы с готовыми решениями:

Найти корень нелинейного уравнения четыремя методами: половинного деления, касательных, хорд, итераций
Задание. Отделить корни уравнений F(x) = 0 и уточнить значения корней (или одного из них) с точностью е = 10-3. Напечатать приближенные...

Метод хорд, касательных, итерации, половинного деления
Добрый вечер. Нужно сделать за методами 1)Половинного деления 2)хорд 3)касательных 4)Итерации Функция : 0,5^х+1=(х-2)^2

Решение уравнений методами половинного деления, хорд и касательных
1. В программе предусмотреть формирование меню из четырех пунктов: три пункта - для вызова методов(для каждого отдельная программа:...

9
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
04.10.2013, 12:29
Пример метода хорд и касательных
Delphi
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
44
{Решить уравнение x^4-26x^3+131x^2-226x+120=0 методом хорд и касательных
с точностью 0,0001, если известно, что корень уравнения в [19.5;21.2}
function f(var x:real):real;
begin
f:= x*x*x*x-26*x*x*x+131*x*x-226*x+120;
end;
function f1(var x:real):real;
begin
f1:= 4*x*x*x-78*x*x+262*x-226; {первая производная}
end;
function f2(var x:real):real;{вторая производная}
begin
f2:=12*x*x-156*x+262;
end;
var
a,b:real;
e,e1:real;
x0,tmp:real;
x11,x12:real;
z,x6,y:real;
begin
a:=19.5;
b:=21.2;
e:=0.0001;
x0:=a;
if f(a)*f(b)>0 then writeln('a or b is incorrect')
else
 begin
  x11:=x0-f(x0)/f1(x0);
  x12:=a-((b-a)*f(a)/(f(b)-f(a)));
  e1:=(x11+x12)/2;
  while  abs(e1-x11)>e do
    begin
     a:=x11;
     b:=x12;
     x11:= a-F(a)/f1(a);
     x12:= a-((b-a)*f(a)/(f(b)-f(a)));
     e1:=(x11+x12)/2;
    end;
  writeln ('koren: ',x11:6:4)
 end;
readln
end.
 // ответ x=20.0000
0
2 / 2 / 1
Регистрация: 26.11.2012
Сообщений: 102
04.10.2013, 12:36  [ТС]
не могу понять а половинчатый тут имеется?

Добавлено через 1 минуту
и при запуске у меня почему то 4 ошибки, связанные с переменными
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
04.10.2013, 12:40
Цитата Сообщение от kent555 Посмотреть сообщение
не могу понять а половинчатый тут имеется?
У меня написано
Цитата Сообщение от Puporev Посмотреть сообщение
Пример метода хорд и касательных
поскольку у Вас написано
Цитата Сообщение от kent555 Посмотреть сообщение
прицепи половин. деления я сделаю. только не знаю как писать методами хорд и касательных
Цитата Сообщение от kent555 Посмотреть сообщение
и при запуске у меня почему то 4 ошибки, связанные с переменными
У меня ошибок нет, все работает исправно

Delphi
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
44
45
46
47
program Project2;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
function f(var x:real):real;
begin
f:= x*x*x*x-26*x*x*x+131*x*x-226*x+120;
end;
function f1(var x:real):real;
begin
f1:= 4*x*x*x-78*x*x+262*x-226; {первая производная}
end;
function f2(var x:real):real;{вторая производная}
begin
f2:=12*x*x-156*x+262;
end;
var
a,b:real;
e,e1:real;
x0,tmp:real;
x11,x12:real;
z,x6,y:real;
begin
a:=19.5;
b:=21.2;
e:=0.0001;
x0:=a;
if f(a)*f(b)>0 then writeln('a or b is incorrect')
else
 begin
  x11:=x0-f(x0)/f1(x0);
  x12:=a-((b-a)*f(a)/(f(b)-f(a)));
  e1:=(x11+x12)/2;
  while  abs(e1-x11)>e do
    begin
     a:=x11;
     b:=x12;
     x11:= a-F(a)/f1(a);
     x12:= a-((b-a)*f(a)/(f(b)-f(a)));
     e1:=(x11+x12)/2;
    end;
  writeln ('koren: ',x11:6:4)
 end;
readln
end.
1
2 / 2 / 1
Регистрация: 26.11.2012
Сообщений: 102
04.10.2013, 12:41  [ТС]
все понял. а вот теперь другая ошибка runtime 105 at 00404594. скажите что это
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
04.10.2013, 12:42
Я уже писал
Цитата Сообщение от Puporev Посмотреть сообщение
У меня ошибок нет, все работает исправно
1
2 / 2 / 1
Регистрация: 26.11.2012
Сообщений: 102
04.10.2013, 12:43  [ТС]
все спасибо большое. как я понял здесь все 3 способа?
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
04.10.2013, 13:02
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Да нихрена ты не понял Это комбинированный метод хорд и касательных.
У тебя же написано
Цитата Сообщение от kent555 Посмотреть сообщение
хорд и касательных комбинированные
Вот для твоего уравнения(лишние переменные я убрал, это от другой программы остались)
Delphi
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
44
45
program Project2;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
function f(var x:real):real;
begin
f:= sqrt(x)-2*cos(x);
end;
function f1(var x:real):real;
begin
f1:=(4*sqrt(x)*sin(x)+1)/(2*sqrt(x)); {ïåðâàÿ ïðîèçâîäíàÿ}
end;
function f2(var x:real):real;{âòîðàÿ ïðîèçâîäíàÿ}
begin
f2:=(8*sqrt(x*x*x)*cos(x)-1)/(4*sqrt(x*x*x));
end;
var a,b:real;
    e,e1,x0:real;
    x11,x12:real;
begin
a:=1;
b:=2;
e:=0.0001;
x0:=a;
if f(a)*f(b)>0 then writeln('a or b is incorrect')
else
 begin
  x11:=x0-f(x0)/f1(x0);
  x12:=a-((b-a)*f(a)/(f(b)-f(a)));
  e1:=(x11+x12)/2;
  while  abs(e1-x11)>e do
    begin
     a:=x11;
     b:=x12;
     x11:= a-F(a)/f1(a);
     x12:= a-((b-a)*f(a)/(f(b)-f(a)));
     e1:=(x11+x12)/2;
    end;
  writeln ('koren: ',x11:6:4)
 end;
readln
end.
Добавлено через 3 минуты
Вот метод половинного деления
Delphi
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
program Project2;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
function F(x:real):real;
begin
F:=sqrt(x)-2*cos(x);
end;
 
var a,b,c,x,e:real;
begin
a:=1;
b:=2;
e:=0.0001;
repeat
   c:=(a+b)/2;
   if F(a)*F(c)<=0 then b:=c
   else a:=c;
until abs(b-a)<e;
x:=(a+b)/2;
writeln('x=',x:0:5);
readln
end.
1
2 / 2 / 1
Регистрация: 26.11.2012
Сообщений: 102
04.10.2013, 15:55  [ТС]
а как эти программы соеденить
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
04.10.2013, 16:11
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
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
44
45
46
47
48
program Project2;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
function f(var x:real):real;
begin
f:= sqrt(x)-2*cos(x);
end;
function f1(var x:real):real;
begin
f1:=(4*sqrt(x)*sin(x)+1)/(2*sqrt(x)); {первая производная}
end;
function f2(var x:real):real;{вторая производная}
begin
f2:=(8*sqrt(x*x*x)*cos(x)-1)/(4*sqrt(x*x*x));
end;
var a,b,c,x:real;
    e,e1,x0:real;
    x11,x12:real;
begin
a:=1;
b:=2;
e:=0.0001;
x0:=a;
x11:=x0-f(x0)/f1(x0);
x12:=a-((b-a)*f(a)/(f(b)-f(a)));
e1:=(x11+x12)/2;
while  abs(e1-x11)>e do
 begin
  a:=x11;
  b:=x12;
  x11:= a-F(a)/f1(a);
  x12:= a-((b-a)*f(a)/(f(b)-f(a)));
  e1:=(x11+x12)/2;
 end;
writeln ('Metod hord i kasatelnyh x=',x11:0:5);
repeat
   c:=(a+b)/2;
   if F(a)*F(c)<=0 then b:=c
   else a:=c;
until abs(b-a)<e;
x:=(a+b)/2;
writeln('Metod delenia popolan   x=',x:0:5);
readln
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.10.2013, 16:11
Помогаю со студенческими работами здесь

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

Нахождения корней уравнения: метод половинного деления (бисекции) или метод хорд
Разработать программу нахождения корней уравнения f(x) =0 на интервале с точностью e = 0,001 (интервал или подобрать самостоятельно). При...

Уточнение корней методом половинного деления (дихотомии)
Помогите, пожалуйста, решить задачку в Паскале, сдавать через 2 дня!!! Выполните отделение корней уравнения с использованием...

Итерационные циклы. уточнение корней уравнений методом половинного деления.
Верно ли решение данного уравнения на интервале, решить решил, а смысл не понял. Вот код программы. Program...

Отделение и уточнение корней нелинейных уравнений. Метод половинного деления(Проб)
Помогите исправить ошибку, пожалуйста. Определение и уточнение корней нелинейных уравнений. Уравнение: x3 + 3x2 - 8x - 3 = 0 ...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru