Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Lazarus Parabel zeichnen mithilfe von TChart


honischmelone - Mi 15.03.17 18:36
Titel: Lazarus Parabel zeichnen mithilfe von TChart
Hallo ! Ich schreibe zurzeit in Lazarus ein Programm zur Untersuchung von einer quadratischen Funktion der Form ax^2+bx+c=0.
Diese will ich nun auch zeichnen lassen mit der TChart Komponente.
hier mein Quelltext:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TForm1.FormCreate(Sender: TObject);
const
  N = 100;
  MIN = -10;
  MAX = 10;
var
  i: Integer;
  x: Double;
  f:=a*(x*x)+b*x+c;
begin
  for i:=0 to N-1 do begin
    x := MIN + (MAX - MIN) * i /(N - 1);
    Chart1LineSeries1.AddXY(x, f(x));
  end;

Mein Problem: Wie lege ich f als Funktion fest? Ich gebe in mein Programm eigentlich nur a,b und c ein und hab vorher ausschließlich damit gearbeitet.
Hilfe wäre dringend angebracht und ich danke jeder Anregung !!

Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt


mandras - Mi 15.03.17 23:37

Grob in dieser Art:


Delphi-Quelltext
1:
2:
3:
4:
function f (a,x,b,c:double):double;
begin
 result := a*(x*x)+b*x+c;
end;


Diese Funktion kannst Du nun vor die Prozedur TForm1.FormCreate setzen
oder auch gerne innerhalb dieser (also als lokale Funktion).

Das muß dann aber passieren im Block zwischen "procedure ..." und "begin", zB so:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
procedure TForm1.FormCreate(Sender: TObject);
 function f (a,x,b,c:double):double;
 begin
  result := a*(x*x)+b*x+c;
 end;

const
...


LG


frank ranis - Do 16.03.17 11:35

Hallo honischmelone ,

ein Vorname wäre super.

Habe mal dein Problem in ein LAZ-Mini-Prog gegossen.

Viel Spass beim probieren , ändern .

Gruß

Frank