Здравствуйте.Необходима Ваша помощь.Есть прога на паскале.Необходимо реализовать ее в MidletPascale. Вот собсна и она:
Program m1;
uses crt;
Var a0,a1,a2,a3,x,y,m,eps:real;
Function f(a0,a1,a2,a3,x:real):real;
Begin
f:=a0+(a1+1)*x+a2*x*x+a3*x*x*x
End;
Begin
clrscr;
Writeln('eps');
readln(eps);
clrscr;
Writeln('a0');
readln(a0);
clrscr;
Writeln('a1');
readln(a1);
clrscr;
Writeln('a2');
readln(a2);
clrscr;
Writeln('a3');
readln(a3);
clrscr;
Writeln('x0');
readln(x);
clrscr;
y:=f(a0,a1,a2,a3,x);
writeln(y:8:6);
ReadKey;
clrscr;
Repeat
m:=(f(a0,a1,a2,a3,y)-y)/(y-x);
m:=1/(1-m);
x:=y+m*(f(a0,a1,a2,a3,y)-y);
writeln(x:8:6);
Readkey;
clrscr;
m:=x;x:=y;y:=m;
m:=y-x;
if m<0 then
m:=m*(-1);
Until m<=eps;
writeln(y:8:6);
ReadKey;
End.
Особо интересует эта часть кода:
readln(a0);
...
writeln(y:8:6);
Не могу вводить числа типа real...
В наработках есть:
var A0, A1, A2, A3, x0, eps : string;
item1,item2, item3, item4, item5 , item6, base : integer;
A02, A12, A22, A32, eps2, d, x02, x2 : real;
....
item1 := FormAddTextField('A0:', '', 20, TF_NUMERIC);
A0 := FormGetText(item1);
A02 := StringToReal(A0,base);
т.е есть формы,туда вводится число, но в программе не ставится ","
Заранее Спасибо!
|