Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2010, 21:55   #1
president_ml
 
Регистрация: 05.12.2010
Сообщений: 9
Восклицание Где-то в методе касательных ошибка. Нужно найти

В программе нужно уточнить корень методом касательных. В строке 46 после kol чего-то не хватает, не пойму чего.вот эта строка отдельно
kasat(Lb,Rb,Eps,Maks,Koren,kol); - 5-я снизу
подскажите пожалуйста. Заранее спасибо.

program kasatilnie;
var kol,Lb,Rb,Eps,Koren,Maks:real;
out:integer;
function f(Arg:real):real;
begin
f:=8*cos(Arg)-Arg-6;
end;
function f1(Arg:real):real;
begin
f1:=8*(-sin(Arg))-1;
end;
function f2(Arg:real):real;
begin
f2:=8*(-cos(Arg));
end;
procedure Maximum(a,b:real; var max:real);
var i,n:integer;
x:real;
begin
n:=round((b-a)/0.01)+1;
x:=a;
max:=abs(f1(x));
for i:=2 to n do begin
x:=x+0.01;
if abs(f1(x))>max then max:=abs(f1(x)); end;
end;
procedure kasat(a,b,Max,E:real; var x,x0,x1:real; var k:integer);
begin
Kol:=0;
if f(a)*f2(a)<0 then
x1:=b-f(b)/f1(b)
else
x1:=a-f(a)/f1(a);
x0:=x1; kol:=kol+1;
if abs(f(x))>=E*max then
begin
x0:=x1-f(x1)/f1(x1);
kol:=kol+1; x1:=x0
end; end;
begin
write('a=');readln(Lb);
write('b=');readln(Rb);
writeln('Eps=');readln(eps);
out:=round(ln(1/eps)/ln(10)); writeln('out=',Out);
maximum(Lb,Rb,maks);
kasat(Lb,Rb,Eps,Maks,Koren,kol);
writeln('Метод касательных');
writeln('x0=', Koren:0 : out, 'f(x0)=',f(koren):0 : out, 'k=',kol);
readln;
end.

Последний раз редактировалось president_ml; 08.12.2010 в 21:59.
president_ml вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача на матрицы. где-то закралась ошибка, нужно найти [Паскаль] president_ml Помощь студентам 3 08.12.2010 16:19
Нужно посчитать сумму ряда. В программе ошибка. Пожалуйста помогите найти Рита Белова Помощь студентам 5 05.12.2009 13:07
Где найти Delphi Nick93.93 Софт 8 01.09.2009 21:07
Где найти s.mag БД в Delphi 8 30.06.2008 13:34
где найти инфу про программирование документов ms office в Delphi? нужно срочно! Алёна БД в Delphi 7 05.04.2007 12:57