Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Eigene prozedur aufrufen? (https://www.delphipraxis.net/92186-eigene-prozedur-aufrufen.html)

gekkorist 15. Mai 2007 22:30


Eigene prozedur aufrufen?
 
Hallo, habe eine Prozedure gemacht (habe da noch net viel ahnung, mit eigene Prozeduren, funktionen)

Delphi-Quellcode:
procedure fl_um(var x,y,z :real);
var s1,s,fl:real;
begin
s1:=x+y+z;
s:=s1/2;
fl:=sqrt(s*(s-x)*(s-y)*(s-z));

end;
procedure TForm1.Button1Click(Sender: TObject);
var
a,b,c :real;
begin
a:=StrToFloat(Edit1.Text );
b:=StrToFloat(Edit2.Text );
c:=StrToFloat(Edit3.Text );

end;
wie kann ich sagen das die prc. fl_um in edit4.text ausgegeben wird?
Komm da einfach net drauf,
danke.

Luckie 15. Mai 2007 22:34

Re: Eigene prozedur aufrufen?
 
Mach daraus eine Funktion, die einen Wert zurückgibt.

gekkorist 15. Mai 2007 22:38

Re: Eigene prozedur aufrufen?
 
Bitte wie
Delphi-Quellcode:
function fla(var a1,a2,a3:real):string;
var sf,s:real;
begin
sf:=a1+a2+a3;
s:=sf/2;
sf:=sqrt(s*(s-a1)*(s-a2)*(s-a3));
end;
so?

Wenn ich das dann so aufrufe
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
a,b,c :real;
begin
a:=StrToFloat(Edit1.Text );
b:=StrToFloat(Edit2.Text );
c:=StrToFloat(Edit3.Text );
edit4.Text :=fla(a,b,c);
erscheint nix... ich weiss nicht wieso.
Aber ich will das mit der Prozedure auch mal versuchen, aber wie geht daS? ^^

jfheins 15. Mai 2007 22:39

Re: Eigene prozedur aufrufen?
 
Mach es so:


Delphi-Quellcode:
function fla(var a1,a2,a3:real):string;
var sf,s:real;
begin
sf:=a1+a2+a3;
s:=sf/2;
Result:=sqrt(s*(s-a1)*(s-a2)*(s-a3));
end;

procedure TForm1.Button2Click(Sender: TObject);
var
a,b,c :real;
begin
a:=StrToFloat(Edit1.Text );
b:=StrToFloat(Edit2.Text );
c:=StrToFloat(Edit3.Text );
edit4.Text :=fla(a,b,c);
;)

Eine Funktion ist hier einfach ... praktischer, weil du einen Wert zurückgeben möchtest ;)

gekkorist 15. Mai 2007 22:42

Re: Eigene prozedur aufrufen?
 
k, habe es mit der prozedure auch hinbekommen *kopfgegendiewand :D*

muss man bei einer funktion immer result nehmen oder geht das auch anders?

___
Ok hat sich alles erledigt, habe es verstanden!
Vorher überlegen und dann posten, sry.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz