function func1(i:extended):extended;
begin
func1:=a*i*i+b*i+c;
end;
function func2(i:extended):extended;
begin
func2:=a*exp(b*i);
end;
procedure TForm1.but11Click(Sender: TObject);
begin
GroupBox1.Visible:=true;
lab3.Visible:=true;
ed3.Visible:=true;
k:=1; //первый график
end;
procedure TForm1.but12Click(Sender: TObject);
begin
GroupBox1.Visible:=true;
lab3.Visible:=false;
ed3.Visible:=false;
k:=2; //второй график
end;
procedure TForm1.btOKClick(Sender: TObject);
var i:integer;
begin
Form2.Series1.Clear;
try
a:=StrToFloat(ed1.Text);
b:=StrToFloat(ed2.Text);
c:=StrToFloat(ed3.Text);
Form2.visible:=true; //будем там рисовать график
if (k=1) then
for i:=-100 to 100 do
Form2.Series1.AddXY(i,func1(i))
else
for i:=0 to 100 do
Form2.Series1.AddXY(i,func2(i)+10);
except
Application.MessageBox('Правильно вводите данные!!!','Ошибка');
end;
end;
TChart и exp()
Почему TChart так плохо рисует exp()?
что значит плохо? какие данные ты даешь, такие графики и строит. ты бы попробовал для начала сделать так, чтобы TChart оси со значениями абсциссы и ординаты показывал. сделал? а теперь глянь сколько будет 2.7 в степени 100, а потом 2.7. в степени 0, 1; первое(2.7^100) во много раз больше 1, 2.7, 2.7^2, и т.д. поэтому этими малыми значениями можно пренебречь - вот отсюда и график такой. кстати парабола на больших значениях вообще такое выдает - ужас.