Программа
Program Chord;
{ Поиск корня уравнения
методом хорд }
Type Func=function(x:real):real; { Тип функция }
Var Result:real; { Корень }
X:real; { Приближение к корню }
Function F(x:real):real; far; { Вычисление функции }
Begin
F:=x*x-100
End;
Function Root(X0:real;F:Func):real; { Функция нахождения корня }
const Eps=0; { Точность вычислений }
var X,XNew:real; { Приближенные значения корня }
F0:real; { Значение функции в точке X0 }
Fx:real; { Значение функции в точке X }
Begin
F0:=F(X0); { Вычисление значения функции в точке начального приближения }
X:= X0+1; { Определение первого приближения }
XNew:=X+1; { Определение второго приближения }
while abs(XNew-X)>Eps do { Цикл приближения к корню }
begin
X:=XNew; { Сохранение предыдущего приближения }
Fx:=F(X); { Вычисление значения функции в точке X }
if Fx<>0 { Если новое приближение не является корнем }
then XNew:=X-(X-X0)/(1-F0/Fx) { то вычисление нового приближения }
else XNew:=X { иначе подготовка выхода из цикла }
end;
Root:=(XNew+X)/2 { Определение значения функции }
End;
BEGIN
WriteLn; { Пропуск строки }
WriteLn('Вычисление корня нелинейного уравнения x^2=100');
WriteLn('Метод хорд.');
Write('Введите приближение корня ');
ReadLn(X); { Ввод начального приближения }
Result:=Root(X,F); { Вычисление корня }
writeln('x=',Result,' F(x)=',F(Result)) { Вывод корня и проверки }
;WriteLn('=========================');
WriteLn('Stud-Prog.narod.ru - помощь студентам по программированию');
WriteLn('StudDraw.narod.ru - помощь студентам по черчению');
WriteLn('English-Translator.narod.ru - английский язык, рефераты? переводы');
WriteLn('+7-(904)-601-65-28 Александр Евгеньевич');
WriteLn;
WriteLn('Нажмите <Enter> для завершения программы');
ReadLn;
END.
Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию