![]() |
|
|
#1
|
||||
|
||||
|
Помогите перевести программку в delphi
![]() Код:
{Комбинированный метод решения нелинейного уравнения}
program kombi;
uses crt;
function f(x:real):real;{Исходная функция}
begin
f:=0.1*sqr(x)-x*ln(x);
end;
function f1(x:real):real;{Первая производная функции}
begin
f1:=0.2*x-1+ln(x);
end;
function f2(x:real):real;{Вторая производная функции}
begin
f2:=0.2+1/x;
end;
var a,b,e,e1,x0,x11,x12:real;
begin
clrscr;
writeln('Решение нелинейного уравнения комбинированным методом');
writeln('Уравнение 0,1x^2-xln(x)=0');
write('Введите левую и правую границы интервала: ');
read(a,b);
write('Введите требуемую точность решения: ');
read(e);
writeln('Решение');
if f(a)*f2(a)>=0 then x0:=a else x0:=b;
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('Ответ: корень = ',x11:6:4);
end;
readln;
readln
end. |
|
#2
|
||||
|
||||
|
Вот консольное приложение
Код:
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils;
function f(x:real):real;{Исходная функция}
begin
f:=0.1*sqr(x)-x*ln(x);
end;
function f1(x:real):real;{Первая производная функции}
begin
f1:=0.2*x-1+ln(x);
end;
function f2(x:real):real;{Вторая производная функции}
begin
f2:=0.2+1/x;
end;
var a,b,e,e1,x0,x11,x12:real;
begin
writeln('Решение нелинейного уравнения комбинированным методом');
writeln('Уравнение 0,1x^2-xln(x)=0');
write('Введите левую и правую границы интервала: ');
read(a,b);
write('Введите требуемую точность решения: ');
read(e);
writeln('Решение');
if f(a)*f2(a)>=0 then x0:=a else x0:=b;
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('Ответ: корень = ',x11:6:4);
end;
readln;
readln;
end. |
|
#3
|
||||
|
||||
|
а если с граф. оформлением?
|
|
#4
|
||||
|
||||
|
Ну наворотить всяких окошечек и контрольчиков можно много, а смысл?
|