Datum:
Project1:
program Project1;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Unit1:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Speedbutton1: TButton;
Speedbutton2: TButton;
Speedbutton3: TButton;
Speedbutton4: TButton;
Speedbutton5: TButton;
Speedbutton6: TButton;
Speedbutton7: TButton;
Speedbutton8: TButton;
Speedbutton9: TButton;
Speedbutton10: TButton;
ButtonMinus: TButton;
Speedbutton11: TButton;
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure SpeedButton8Click(Sender: TObject);
procedure SpeedButton9Click(Sender: TObject);
procedure SpeedButton10Click(Sender: TObject);
procedure SpeedButton11Click(Sender: TObject);
procedure SpeedButton12Click(Sender: TObject);
procedure SpeedButton13Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure SpeedButton14Click(Sender: TObject);
procedure SpeedButton15Click(Sender: TObject);
procedure SpeedButton16Click(Sender: TObject);
procedure SpeedButton17Click(Sender: TObject);
procedure SpeedButton18Click(Sender: TObject);
procedure SpeedButton19Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
var Zahl: String;
x, Zwischenergebnis: real;
Operation: Integer;
{$R *.DFM}
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton1.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton2.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton3.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton4Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton4.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton5Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton5.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton6Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton6.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton7Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton7.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton8Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton8.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton9Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton9.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton10Click(Sender: TObject);
begin
Edit1.text := Edit1.Text + SpeedButton10.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
procedure TForm1.SpeedButton11Click(Sender: TObject);
begin
if Pos(',',Edit1.Text) = 0 then
begin
Edit1.text := Edit1.Text + SpeedButton11.Caption;
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
end;
procedure TForm1.SpeedButton12Click(Sender: TObject);
begin
if Operation = 0 then Zwischenergebnis := x;
If Operation = 1 then Zwischenergebnis := Zwischenergebnis + x;
If Operation = 2 Then Zwischenergebnis := Zwischenergebnis - x;
If Operation = 3 Then Zwischenergebnis := Zwischenergebnis * x;
If Operation = 4 Then
begin
if x <> 0
then Zwischenergebnis := Zwischenergebnis / x
else ShowMessage('Bitte keine Division durch Null!');
end;
Operation := 0; // letzte Operation ist keine
x := Zwischenergebnis;
Edit1.Text := FloatToStr(Zwischenergebnis);
end;
procedure TForm1.SpeedButton13Click(Sender: TObject);
begin
if Operation = 0 then Zwischenergebnis := x;
If Operation = 1 then Zwischenergebnis := Zwischenergebnis + x;
If Operation = 2 Then Zwischenergebnis := Zwischenergebnis - x;
If Operation = 3 Then Zwischenergebnis := Zwischenergebnis * x;
If Operation = 4 Then
begin
if x <> 0
then Zwischenergebnis := Zwischenergebnis / x
else ShowMessage('Bitte keine Division durch Null!');
end;
Edit1.Text := '';
x := 0;
Operation := 1; // letzte Operation ist Plus
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
Zwischenergebnis := 0;
Edit1.Text := '';
x := 0;
Operation := 0; // keine Operation
end;
procedure TForm1.SpeedButton14Click(Sender: TObject);
begin
if Operation = 0 then Zwischenergebnis := x;
If Operation = 1 Then Zwischenergebnis := Zwischenergebnis + x;
If Operation = 2 then Zwischenergebnis := Zwischenergebnis - x;
If Operation = 3 Then Zwischenergebnis := Zwischenergebnis * x;
If Operation = 4 Then
begin
if x <> 0
then Zwischenergebnis := Zwischenergebnis / x
else ShowMessage('Bitte keine Division durch Null!');
end;
Edit1.Text := '';
x := 0;
Operation := 2; // letzte Operation ist Minus
end;
procedure TForm1.SpeedButton15Click(Sender: TObject);
begin
if Operation = 0 then Zwischenergebnis := x;
If Operation = 1 Then Zwischenergebnis := Zwischenergebnis + x;
If Operation = 2 Then Zwischenergebnis := Zwischenergebnis - x;
If Operation = 3 Then Zwischenergebnis := Zwischenergebnis * x;
If Operation = 4 Then
begin
if x <> 0
then Zwischenergebnis := Zwischenergebnis / x
else ShowMessage('Bitte keine Division durch Null!');
end;
Edit1.Text := '';
x := 0;
Operation := 3; // letzte Operation ist Mal
end;
procedure TForm1.SpeedButton16Click(Sender: TObject);
begin
if Operation = 0 then Zwischenergebnis := x;
If Operation = 1 Then Zwischenergebnis := Zwischenergebnis + x;
If Operation = 2 Then Zwischenergebnis := Zwischenergebnis - x;
If Operation = 3 Then Zwischenergebnis := Zwischenergebnis * x;
If Operation = 4
Then
begin
if x <> 0
then Zwischenergebnis := Zwischenergebnis / x
else ShowMessage('Bitte keine Division durch Null!');
end;
Edit1.Text := '';
x := 0;
Operation := 4; // letzte Operation ist Teilen
end;
procedure TForm1.SpeedButton17Click(Sender: TObject);
begin
(* Vorzeichenwechsel *)
x := StrToFloat(Edit1.Text);
x := -x;
Edit1.text := FloatToStr(x);
Zahl := Edit1.Text;
end;
procedure TForm1.SpeedButton18Click(Sender: TObject);
begin
(* Kehrwert, aber nur, wenn ungleich Null *)
if x <> 0 then
begin
x := StrToFloat(Edit1.Text);
x := 1/x;
Edit1.text := FloatToStr(x);
Zahl := Edit1.Text;
end
else
ShowMessage('Von Null gibt es keinen Kehrwert!');
end;
procedure TForm1.SpeedButton19Click(Sender: TObject);
var i,j: Integer;
begin
(* letztes Zeichen löschen, wenn es existiert *)
(* Vorzeichen Minus? - Das darf nicht allein stehen bleiben! *)
j := 0;
if Copy(Edit1.Text,1,1) = '-' then j := 1;
(* Zeichenanzahl *)
i := length(Edit1.Text);
if i > 1 + j then
begin
(* alle Zeichen vom 1. bis zum vorletzten *)
Edit1.text := Copy(Edit1.Text,1,i-1);
Zahl := Edit1.Text;
x := StrToFloat(Zahl);
end;
end;
end.
|
Kann mir jemand das richtige Ergebnis schreiben oder mir den Fehler sagen, da ich ohne Hilfe nicht weiter komme! Bitte helft mir schnell!!!! Danke schon mal fürs lesen.
Datum:
Warum denn so eilig? Lass mich raten...der Quelltext ist Teil eines Raketenprojekts. Und der Start kann nicht wegen der Software verschoben werden...?
Datum:
Du schreibst weder welchen Fehler es gibt, noch lieferst du uns ein Projekt was man selber übersetzen könnte? Wie soll man da jemand helfen. Es ist übrigens sinnvoll Buttons einen sinnvollen namen zu geben, Button1, Button2 ist nicht wirklich brauchbar.
Datum:
Eine Fehlerbeschreibung wäre schon ziemlich cool, oder?
Datum:
Hans schrieb: > Kann mir jemand das richtige Ergebnis schreiben oder mir den Fehler > sagen, da ich ohne Hilfe nicht weiter komme! > > Bitte helft mir schnell!!!! Was ist denn das Problem? Ist derjenige, von dem du den Code geklaut hast nicht mehr greifbar? (Der Code sieht grundsätzlich nicht schlecht aus. Vom Umfang her ist er auch mehr, als man von einem Neuling erwarten würde. Daher: Wenn du nicht in der Lage bist, da drinnen Fehler selbst zu suchen, zb auch mit Debugger-Hilfe, dann hast du den Code nicht selbst geschrieben)
Datum:
In dem Quelltext ist ein Fehler nur ich weiß nicht wo. Außerdem funkt es nicht so wie ich will. Also Hilft mir!!!!!!!!!!!!!!!!!!!!!!!
Datum:
No. Nach deiner letzten Meldung bin ich mir ganz sicher: Den Code hast du unter Garantie nicht selbst geschrieben. Ich mach hier dicht, weil ich sehr davon überzeugt bin, dass du gerade versuchst, dir eine bessere Benotung zu erschleichen. Und da spielt das Forum nicht mit.