"Berechnung" mit Matheformeln ?



  • Hallo,

    ich möchte so ein "kleines" Mathe Programm schreiben, wo man in Edit-Komponenten die Zahlen einträgt und dann per Button, mit den Zahlen, die in der Edit-Komponente stehen an Hand von Matheformeln, gerechnet wird. - Das Ergebnis soll dann in der Panel Komponente stehen. So habe ich es versucht, funktioniert aber nicht, Warum ?:

    Hier die Kreis Formel für den Flächeninhalt:

    float pi = 3.141592654;
    
    void __fastcall TForm1::ErgebnisButtonClick(TObject *Sender)
    {
    String Ergebnis;
    Ergebnis = StrToFloat PI * Edit1->Text * Edit1->Text;
    
    Panel1->Caption = Ergebnis;
    }
    

    oder

    void __fastcall TForm1::ErgebnisButtonClick(TObject *Sender)
    {
    Panel1->Caption = StrToFloat PI * Edit1->Text * Edit1->Text;
    }
    

    Wobei Edit1->Text den Radius des "Kreises" darstellen soll.

    Bin in C++ sowie BCB neu, deswegen habe ich keine anderen Möglichkeiten gefunden das hinzubekommen.

    MFG
    Goodie



  • Hallo

    "funktioniert aber nicht" ist keine ausreichende Fehlerbeschreibung!

    Warum ?

    Weil ir grundlegenste Kenntnisse in C++ fehlen, im Detail Datentypen und ihre Unterschiede sowie das korrekte Benutzen von Funktionen. Ich empfehle dir dringenst ein Grundlagentutorial in C++ durchzuarbeiten, und erstmal die Sprache in Konsolenprogrammen zu lernen!

    float pi = 3.141592654;
    void __fastcall TForm1::ErgebnisButtonClick(TObject *Sender)
    { 
      float a = StrToFloatDef(Edit1->Text, 0);
      float b = StrToFloatDef(Edit2->Text, 0);
      String Ergebnis = FloatToStr(a * b * PI);
      Panel1->Caption = Ergebnis;
    }
    

    bis bald
    akari



  • Hallo akari,

    ja werde ich gleich machen! Was bewirkt das StrToFloatDef ?

    MFG
    Goodie



  • Das kannst du ganz leicht rausfinden, wenn du mal draufklickst und testest, was F1 bewirkt 😉



  • audacia schrieb:

    Das kannst du ganz leicht rausfinden, wenn du mal draufklickst und testest, was F1 bewirkt 😉

    audacia meint die gute BCB-Hilfe. Du klickst im Quelltext-Editor auf die Funktion, zu der du Infos haben möchtest, so dass der Cursor im Wort blinkt, und drückst dann F1. Die Hilfe öffnet sich.



  • Danke!



  • float pi = 3.141592654; 
    void __fastcall TForm1::ErgebnisButtonClick(TObject *Sender) 
    { 
      float a = StrToFloatDef(Edit1->Text, 0); 
      float b = StrToFloatDef(Edit2->Text, 0); 
      String Ergebnis = FloatToStr(a * b * PI); 
      Panel1->Caption = Ergebnis; 
    }
    

    Was ist PI? Wäre ich der Compiler, würde ich nur pi kennen, aber "pi is assigned a value that is never used."
    float b brauchen wir gar nicht, da der Radius gebraucht wird, der ist in Edit1.
    Damit wäre das Ergebnis (a * a * pi).
    In math.h gibt es übrigens M_PI, das dürfte genauer sein als obige Version.
    Gruß,
    Christian


Log in to reply