Delphi-PRAXiS
Seite 5 von 6   « Erste     345 6      

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

DeddyH 4. Jun 2009 09:31

Re: taschenrechner (erweiterung)
 
Welche Ausgabe wovon?

safak67 4. Jun 2009 10:11

Re: taschenrechner (erweiterung)
 
Also ich habe ja die function geschrieben, aber wie gebe ich die berechnung aus..?
Delphi-Quellcode:
function TFormTR.BerechneTerm(ATerm: string): Double;
var
  Op: string;
  iPos, i: Integer;
  Seg1, Seg2: Double;
begin
  for i := 0 to 3 do
  begin
    case i of
      0: Op := '+';
      1: Op := '-';
      2: Op := '*';
      3: Op := '/';
    end;
    iPos := Pos(Op, ATerm);
    if iPos > 0 then
    begin
      Seg1 := BerechneTerm(Copy(ATerm, 1, iPos - 1));
      Seg2 := BerechneTerm(Copy(ATerm, iPos + 1, Length(ATerm)));
      case i of
        0: Result := Seg1 + Seg2;
        1: Result := Seg1 - Seg2;
        2: Result := Seg1 * Seg2;
        3: Result := Seg1 / Seg2;
      end;
      Exit;
    end;
  end;

end;
da unten muss ich ja jetzt die Ausgabe programmieren aber ich weiß nicht wie..

DeddyH 4. Jun 2009 10:20

Re: taschenrechner (erweiterung)
 
Die Funktion gibt Dir doch eine Double zurück, die kannst Du mit FloatToStr oder Format oder FormatFloat in einen String wandeln und den z.B. einem Label (genauer: dessen Caption) zuweisen. Das sind aber wirklich Grundlagen, die man beherrschen sollte.

[edit] Funktionsnamen verwechselt [/edit]

Blup 4. Jun 2009 10:31

Re: taschenrechner (erweiterung)
 
1. Welches Steuerelement in deinem Formular, soll den die Anzeige der Ergebnisse übernehmen?
2. Welchem Property hat dieses Steuerelemt, dem du das Ergebnis zuweisen möchtest? (der Hilfe zum Steuerelement entnehmen)
3. Welcher Datentyp ist für dieses Steuerelement erforderlich? (der Hilfe zum Property entnehmen)
4. In welchem Datentyp liegt das Ergebnis der Berechnungsfunktion vor? (in diesem Fall Double)
5. Wenn der Datentyp unterschiedlich ist, welche Funktion wandelt den Ergebnistyp in den Ausgabetyp? (der Hilfe zu Typumwandlungen entnehmen)
6. Gehirn einschalten und die Platzhalter mit den richtigen Namen austauschen.

AusgabeelementName.PropertyName := TypumwandlungsfunktionName(BerechneTerm(LabelAnzei ge.Caption));

(Parsen hat übrigens nichts mit der Ein- und Ausgabe von Werten zu tun.)

Sharky 4. Jun 2009 10:32

Re: taschenrechner (erweiterung)
 
Zitat:

Zitat von safak67
hat denn keiner ne idee wie ich das mit der ausgabe mache

Hai safak67,

bitte halten dich an die "ungeschriebenen" Regeln im Forum. Ein "puschen" von Beiträgen ist erst nach 24 Stunden erwünscht.

Ausserdem soll pro Thread immer nur eine Frage gestellt und beantwortet werden. Hier scheint das ganz aber langsam in die Richtung:
"Ich habe jetzt die nächste Funktion die ich nicht verstehe also helft mir bitte" zu laufen.

safak67 4. Jun 2009 10:43

Re: taschenrechner (erweiterung)
 
Ich habe jetzt ein ganz anderes problem, was ich vorher nicht hatte.. wenn ich das programm stare und ne berechnung durchführe, kommt links ne warnung...

'TLabel' enthält kein Element namens 'Caption' in Zeile 49

ich habe mehrere solcher fehler..

mkinzler 4. Jun 2009 10:46

Re: taschenrechner (erweiterung)
 
Starte mal die IDE neu. Aber sonst gilt schon das Gesagte: "Eine Frage pro Thread!"

safak67 4. Jun 2009 11:06

Re: taschenrechner (erweiterung)
 
Soll ich dann immer ein neuen Thread aufmachen?

DeddyH 4. Jun 2009 11:10

Re: taschenrechner (erweiterung)
 
Ja, pro Frage ein Thread, damit andere mit einem ähnlichen Problem auch später den passenden Thread finden können.

mkinzler 4. Jun 2009 11:12

Re: taschenrechner (erweiterung)
 
Ich sage nur Grundlagen, Grundlagen, Grundlagen
Zitat:

Soll ich dann immer ein neuen Thread aufmachen?
Ic
h weiss nicht, was es da zu missverstehen gibt: Eine Frage pro Thread bedeutet: Eine Frage Frage pro Thread


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:43 Uhr.
Seite 5 von 6   « Erste     345 6      

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