Einzelnen Beitrag anzeigen

thknub

Registriert seit: 25. Apr 2008
12 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Falls Variable(n) vorhanden mache das sonst mache dies

  Alt 26. Apr 2008, 21:22
Wenn ich die Variante von omata benutze antwortet er mir [Pascal Fehler] E2065 Ungenügende Forward- oder External-Deklaration: 'TForm5.Berechnung'.

Hier nochmal der Code

Delphi-Quellcode:
unit Unit5;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,Math;

type
  TForm5 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Edit7: TEdit;
    Edit8: TEdit;
    Edit9: TEdit;
    Edit10: TEdit;
    Edit11: TEdit;
    Edit12: TEdit;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Button1: TButton;
    Label13: TLabel;
    Label14: TLabel;
    Edit13: TEdit;
    Edit14: TEdit;
    Edit15: TEdit;
    Edit16: TEdit;
    Edit17: TEdit;
    Edit18: TEdit;
    Label15: TLabel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Label21: TLabel;
    Label22: TLabel;
    Label23: TLabel;
    Edit19: TEdit;
    Edit20: TEdit;
    Edit21: TEdit;
    Edit22: TEdit;
    Label24: TLabel;
    Label25: TLabel;
    Edit23: TEdit;
    Edit24: TEdit;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public

  end;

var
  Form5: TForm5;

implementation

{$R *.dfm}

procedure TForm5.Button1Click(Sender: TObject);




 var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r: REAL;

begin

a := StrToFloat(edit1.Text);
b := StrToFloat(edit2.Text);
c := StrToFloat(edit3.Text);
d := StrToFloat(edit4.Text);
e := StrToFloat(edit5.Text);
f := StrToFloat(edit6.Text);
g := sqrt(sqr(b)+sqr(c)-2*b*c*Cos(d));
h := sqrt(sqr(a)+sqr(c)-2*a*c*Cos(e));
i := sqrt(sqr(a)+sqr(b)-2*a*b*Cos(f));
j := ArcCos((sqr(b)+sqr(c)-sqr(a))/(2*b*c));
k := ArcCos((sqr(a)+sqr(c)-sqr(b))/(2*a*c));
l := ArcCos((sqr(a)+sqr(b)-sqr(c))/(2*a*b));
m := sin(d)*b/sin(e);
n := sin(e)*a/sin(d);
o := sin(f)*a/sin(d);
p := ArcSin((a*Sin(e))/b);
q := ArcSin((b*Sin(d))/a);
r := ArcSin((c*Sin(d))/a);

edit7.Text := FloatToStr(g);
edit8.text := FloatToStr(h);
edit9.Text := FloatToStr(i);
edit10.Text := FloatToStr(j);
edit11.Text := FloatToStr(k);
edit12.Text := FloatToStr(l);
edit13.Text := FloatToStr(m);
edit14.Text := FloatToStr(n);
edit15.text := FloatToStr(o);
edit16.Text := FloatToStr(p);
edit17.Text := FloatToStr(q);
edit18.Text := FloatToStr(r);


end;

end.
Wobei g und m sowie h und n das gleiche sind.(Hatte probiert es über verschiedene Ausgabefelder zu machen, aber es kommt immer folgende Nachricht, wenn ich auf testen klicke und nicht in alle Eingabe Felder etwas schreibe: " ist kein gültiger Gleitkommawert

Ich hätte auch nicht wirklich ein Problem damit 3 Ausgabefelder zu machen, wenn man wenigstens nicht überall was eingeben muss, wobei mir zwei oder auch nur eins besser gefielen...

@inherited
Ich versteh jetzt nicht so ganz, was du meinst
  Mit Zitat antworten Zitat