Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Taschenrechner!!?? (https://www.delphipraxis.net/87872-taschenrechner.html)

Crank09 7. Mär 2007 09:27

Re: Taschenrechner!!??
 
So hat mein Lehrer das programmiert :wiejetzt:

Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    Button10: TButton;
    Button11: TButton;
    Button12: TButton;
    Button13: TButton;
    Button14: TButton;
    Button15: TButton;
    Button16: TButton;
    Button17: TButton;
    Button18: TButton;
    Label1: TLabel;
    Button19: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Label1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button9Click(Sender: TObject);
    procedure Button10Click(Sender: TObject);
    procedure Button13Click(Sender: TObject);
    procedure Button14Click(Sender: TObject);
    procedure Button15Click(Sender: TObject);
    procedure Button16Click(Sender: TObject);
    procedure Button18Click(Sender: TObject);
    procedure Button11Click(Sender: TObject);
    procedure Button19Click(Sender: TObject);
    procedure Button12Click(Sender: TObject);
    procedure Button17Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  zahl, ergebnis, f, w : real;
  operator            : Char;
  komma               : boolean;
  i                   : integer;
implementation

{$R *.DFM}

procedure TForm1.Label1Click(Sender: TObject);
begin
     zahl := 0;
     ergebnis := 0;
     f := 10;
     operator := '+';
     label1.Caption := floattostr ( zahl);
     label1.color  := clgray;
     label1.alignment := taRightJustify;
     komma := false;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
      if komma = false then begin
         zahl := zahl * f + 1;
      end else begin
          zahl := zahl + 1 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;



procedure TForm1.Button2Click(Sender: TObject);
begin
      if komma = false then begin
         zahl := zahl * f + 2;
      end else begin
          zahl := zahl + 2 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
      if komma = false then begin
         zahl := zahl * f + 3;
      end else begin
          zahl := zahl + 3 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
      if komma = false then begin
         zahl := zahl * f + 4;
      end else begin
          zahl := zahl + 4 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
      if komma = false then begin
         zahl := zahl * f + 5;
      end else begin
          zahl := zahl + 5 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
      if komma = false then begin
         zahl := zahl * f + 6;
      end else begin
          zahl := zahl + 6 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
      if komma = false then begin
         zahl := zahl * f + 7;
      end else begin
          zahl := zahl + 7 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;

procedure TForm1.Button8Click(Sender: TObject);
begin
      if komma = false then begin
         zahl := zahl * f + 8;
      end else begin
          zahl := zahl + 8 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;

procedure TForm1.Button9Click(Sender: TObject);
begin
       if komma = false then begin
         zahl := zahl * f + 9;
      end else begin
          zahl := zahl + 9 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;

procedure TForm1.Button10Click(Sender: TObject);
begin
      if komma = false then begin
         zahl := zahl * f + 0;
      end else begin
          zahl := zahl + 0 / f;
          f := f * 10;
      end;
      label1.caption := floattostrf ( zahl, ffnumber,7,4);
end;

procedure TForm1.Button13Click(Sender: TObject);
begin
     case operator of
          '+' : ergebnis := ergebnis + zahl;
          '-' : ergebnis := ergebnis - zahl;
          '*' : ergebnis := ergebnis * zahl;
          '/' : ergebnis := ergebnis / zahl;
          '%' : ergebnis := ergebnis * zahl / 100;
     end;
     zahl := 0;
     operator := '+';
     label1.Caption := floattostrf ( zahl, ffnumber,7,4);
     f:= 10;
     komma := false;
end;

procedure TForm1.Button14Click(Sender: TObject);
begin
     case operator of
          '+' : ergebnis := ergebnis + zahl;
          '-' : ergebnis := ergebnis - zahl;
          '*' : ergebnis := ergebnis * zahl;
          '/' : ergebnis := ergebnis / zahl;
          '%' : ergebnis := ergebnis * zahl / 100;
     end;
     zahl := 0;
     operator := '-';
     label1.Caption := floattostrf ( zahl, ffnumber,7,4);
     f:= 10;
     komma := false;
end;

procedure TForm1.Button15Click(Sender: TObject);
begin
     case operator of
          '+' : ergebnis := ergebnis + zahl;
          '-' : ergebnis := ergebnis - zahl;
          '*' : ergebnis := ergebnis * zahl;
          '/' : ergebnis := ergebnis / zahl;
          '%' : ergebnis := ergebnis * zahl / 100;
     end;
     zahl := 0;
     operator := '*';
     label1.Caption := floattostrf ( zahl, ffnumber,7,4);
     f:= 10;
     komma := false;
end;

procedure TForm1.Button16Click(Sender: TObject);
begin
     case operator of
          '+' : ergebnis := ergebnis + zahl;
          '-' : ergebnis := ergebnis - zahl;
          '*' : ergebnis := ergebnis * zahl;
          '/' : ergebnis := ergebnis / zahl;
          '%' : ergebnis := ergebnis * zahl / 100;
     end;
     zahl := 0;
     operator := '/';
     label1.Caption := floattostrf ( zahl, ffnumber,7,4);
     f:= 10;
     komma := false;
end;

procedure TForm1.Button11Click(Sender: TObject);
begin
     case operator of
          '+' : ergebnis := ergebnis + zahl;
          '-' : ergebnis := ergebnis - zahl;
          '*' : ergebnis := ergebnis * zahl;
          '/' : ergebnis := ergebnis / zahl;
          '%' : ergebnis := ergebnis * zahl / 100;
     end;
     zahl := 0;
     operator := '%';
     label1.Caption := floattostrf ( zahl, ffnumber,7,4);
     f:= 10;
     komma := false;
end;

procedure TForm1.Button18Click(Sender: TObject);
begin
     case operator of
          '+' : ergebnis := ergebnis + zahl;
          '-' : ergebnis := ergebnis - zahl;
          '*' : ergebnis := ergebnis * zahl;
          '/' : ergebnis := ergebnis / zahl;
          '%' : ergebnis := ergebnis * zahl / 100;
          'h' : begin
                     f       := ergebnis;
                     ergebnis := 1;
                   for i := 1 to trunc(zahl)do begin
                       ergebnis := ergebnis * f;
                   end;
                end;
          'w' : begin
                      w       := ergebnis;
                      ergebnis := 0;
                   repeat
                         ergebnis := ergebnis + 0.00001;
                         f := 1;
                      for i := 1 to trunc (zahl) do begin
                          f := f * ergebnis;
                      end;
                   until f >= w;
                        ergebnis := ergebnis - 0.00001;
              end;
     end;
     zahl := 0;
     operator := '+';
     label1.Caption := floattostr ( zahl);
     label1.caption := floattostrf (ergebnis, ffnumber,7,4);
     ergebnis      := 0;
     f := 10;

end;
procedure TForm1.Button19Click(Sender: TObject);
begin
     komma := true;
     f := 10;
end;

procedure TForm1.Button12Click(Sender: TObject);
begin
     case operator of
          '+' : ergebnis := ergebnis + zahl;
          '-' : ergebnis := ergebnis - zahl;
          '*' : ergebnis := ergebnis * zahl;
          '/' : ergebnis := ergebnis / zahl;
          '%' : ergebnis := ergebnis * zahl / 100;

     end;
     zahl := 0;
     operator := 'h';
     label1.Caption := floattostrf ( zahl, ffnumber,7,4);
     f:= 10;
     komma := false;
end;

procedure TForm1.Button17Click(Sender: TObject);
begin
     case operator of
          '+' : ergebnis := ergebnis + zahl;
          '-' : ergebnis := ergebnis - zahl;
          '*' : ergebnis := ergebnis * zahl;
          '/' : ergebnis := ergebnis / zahl;
          '%' : ergebnis := ergebnis * zahl / 100;

     end;
     zahl := 0;
     operator := 'w';
     label1.Caption := floattostrf ( zahl, ffnumber,7,4);
     f:= 10;
     komma := false;
end;

end.
aber danke
:-D

[edit=Phoenix]Derlphi-Tags gesetzt. Das nächste mal selber machen. Mfg, Phoenix[/edit]

Sascha.E 7. Mär 2007 11:28

Re: Taschenrechner!!??
 
also dafür dass ihr erst seit ner woche delphi behandelt würde ich sagen dein lehrer hat nen platten ^^ bei uns wurde dat anders gelehrt. aber ich hab ja auch mit pascal angefangen und net mit delphi ^^

viel erfolg weiterhin!

tobu 7. Mär 2007 12:05

Re: Taschenrechner!!??
 
Ich finde das der Code von deinem Lehrer sehr schlecht ist, die Buttons und Variablen sind nicht ordentlich benannt, der Taschenrechner rechnet nicht Punkt vor Strich,.......

Ich finde wenn man jemandem etwas beibringen möchte, dann sollte man es ordentlich machen.

Crank09 8. Mär 2007 19:51

Re: Taschenrechner!!??
 
Ich weiß er meinte auch nur wir sollen es mal versuchen. Aber ich wollte es gerne ausprobieren und da dachte ich mir hol ich mir mal hilfe.
Das der nicht so gut rechnet habe ich auch schon gemerkt naja der macht das auch nicht so oft mit delphi.


Aber trotzdem danke für eure Mühen




Gruß


Crank09


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:52 Uhr.
Seite 2 von 2     12   

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