Entwickler-Ecke
Sonstiges (Delphi) - Quader und Zylinderberechnung
suga2001 - Mo 12.11.07 20:26
Titel: Quader und Zylinderberechnung
also. so weit hab ich alles fertig. hab diesen quelltext nur für den zylinder auch genommen (struktur) das funktioniert ohne weiteres. nun habe ich folgende probleme. er gibt mir kein ergebnis aus und ich finde den fehler nicht. für mich ist soweit alles richtig, es funktioniert beim zylinder ja auch. ... *ratlos* :?
mein quelltext:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79:
| uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;
type TForm2 = class(TForm) Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label5: TLabel; Image1: TImage; Edit4: TEdit; Edit5: TEdit; Button1: TButton; Label4: TLabel; procedure FormCreate(Sender: TObject); procedure Edit1Change(Sender: TObject); procedure Button1Click(Sender: TObject);
private public end;
var Form2: TForm2;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm2.FormCreate(Sender: TObject); var a, b, h, V, ao: real; begin
a := StrToFloat(Edit1.Text); b := StrToFloat(Edit2.Text); h := StrToFloat(Edit3.Text);
V := a*b*h; ao:= 2*(a*b+a*h+b*h);
Edit4.Text := FloatToStr(V); Edit5.Text := FloatToStr(ao); end;
procedure TForm2.Edit1Change(Sender: TObject); var a,b,h,V,ao: Real; begin
a:=0; b:=0; h:=0; V:=0; ao:=0;
a := StrToFloat(Edit1.Text); b := StrToFloat(Edit2.Text); h := StrToFloat(Edit3.Text); V := a*b*h; ao:= 2*(a*b+a*h+b*h); Edit4.Text := FloatToStr(V); Edit5.Text := FloatToStr(ao); end;
procedure TForm2.Button1Click(Sender: TObject); begin Form1.Visible:=true; Form2.visible:=false; end;
end. |
Fehler drin?
Moderiert von
Gausi: Beitragsformatierung überarbeitet.
Narses - Mo 12.11.07 20:47
Moin und :welcome: im Forum!
Zeig doch mal den Quelltext, der nicht geht :nixweiss: du sagst ja selbst schon, dass der Quader funktioniert, dann nutzt uns der Quelltext oben nix - da ist ja kein Fehler drin. :zwinker:
cu
Narses
suga2001 - Mo 12.11.07 21:12
Titel: quelltext?
hallo und danke für die schnelle antwort und die freundliche begrüßung.
das ist mein quelltext, der funktioniert nicht. ich weiß nicht, woran es liegt. ich habe keine ahung, er spuckt mir einfach kein ergebnis aus, wenn ich zahlen eingebe :cry:
quader: quelltext
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84:
| unit Unit2;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;
type TForm2 = class(TForm) Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label5: TLabel; Image1: TImage; Edit4: TEdit; Edit5: TEdit; Button1: TButton; Label4: TLabel; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject);
private public end;
var Form2: TForm2;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm2.Edit1Change(Sender: TObject); var a,b,h,V,ao: real;
begin
a:=0; b:=0; h:=0; V:=0; ao:=0;
a := StrToFloat(Edit1.Text); b := StrToFloat(Edit2.Text); h := StrToFloat(Edit3.Text); V := a*b*h; ao:= 2*(a*b+a*h+b*h); Edit4.Text := FloatToStr(V); Edit5.Text := FloatToStr(ao); end;
procedure TForm2.Button1Click(Sender: TObject); begin Form1.Visible:=true; Form2.visible:=false; end;
end. |
zylinder quelltext:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64:
| unit Unit3;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;
type TForm3 = class(TForm) Image1: TImage; Label1: TLabel; Label2: TLabel; Edit1: TEdit; Edit2: TEdit; Label3: TLabel; Label4: TLabel; Label5: TLabel; Edit3: TEdit; Edit4: TEdit; Button1: TButton; Label6: TLabel; Label7: TLabel; procedure Edit1Change(Sender: TObject); procedure Button1Click(Sender: TObject); private public end;
var Form3: TForm3; r,h,V,ao:real;
implementation
{$R *.dfm}
procedure TForm3.Edit1Change(Sender: TObject); begin r:=0; h:=0; V:=0; ao:=0;
h:= StrToFloat(Edit2.Text); r:= StrToFloat(Edit1.Text); V:= pi*r*r*h; ao:= 2*pi*r*(r + h);
Edit3.Text := FloatToStr(ao); Edit4.Text := FloatToStr(V); end;
procedure TForm3.Button1Click(Sender: TObject); begin Form3.visible:=false; end;
end. |
anfangsform quelltext:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;
type TForm1 = class(TForm) Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private public end;
var Form1: TForm1;
implementation
uses Unit2, Unit3;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); begin Form2. Visible := true; Form1.Visible:=false;
end;
procedure TForm1.Button2Click(Sender: TObject); begin Form3. Visible := true; end;
end. |
zylinder funzt, quader nicht... :?: :?:
Moderiert von
Christian S.: Size-Tag durch Delphi-Tag ersetzt
Blackheart666 - Mo 12.11.07 22:10
Hab jetzt nicht weiter geschaut, aber vieleicht ist EditChange etwas unglücklich gewählt vieleicht solltest Du das ganze eher mit einem Button lösen.
ub60 - Mo 12.11.07 22:13
Delphi-Quelltext
1: 2: 3:
| procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); |
Warum hast Du die Edit1Change-Methode auskommentiert? Dann wird sie auch nicht aufgerufen.
ub60
suga2001 - Mo 12.11.07 22:34
danke für eure hilfe .
aber auch wenn ich die ausklammerung aufhebe bringt es nichts. liegt es daran, dass ich den hauptteil zur berechnung zweimal habe, beim zylinder habe ich das nicht. aber klammer ich den ersten teil aus geht nüscht, und andersrum siehts auch nicht besser aus....
suga2001 - Mo 12.11.07 22:41
danke für euer bemühen. ich nehme den button, damit gehts einfach einfacher :)
viel spass noch und eine gute nacht wünsche ich euch :)
Blackheart666 - Mo 12.11.07 22:48
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26:
| var Form1: TForm1; a,b,h,V,ao: real; implementation
{$R *.dfm}
procedure TForm1.Edit1Change(Sender: TObject); begin a := StrToFloat(Edit1.Text); b := StrToFloat(Edit2.Text); h := StrToFloat(Edit3.Text); V := a*b*h; ao:= 2*(a*b+a*h+b*h); Edit4.Text := FloatToStr(V); Edit5.Text := FloatToStr(ao); end;
procedure TForm1.FormCreate(Sender: TObject); begin a:=0; b:=0; h:=0; V:=0; ao:=0; end; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!