Potenzen mit CMATH, aber wie?



  • also wenn ich anstatt math.h nur math schreibe, spuckt er mir: unable to open include file...aus

    und das andere sagt mir überhaupt nichts sry
    was ist usin namespace std; ? wenn ich es so davor setze kommt auch ein error

    schreibs doch mal so hin wie ich es im fertigen zustand reinschreiben muesste

    wieso klappt es eigentlich nicht wenn ich einfach nur pow(x,y) verwende? die funktion pow ist doch definiert.... 😕

    bitnets



  • Bei dir steht

    #include "CMATH.H"
    

    und das sollte

    #include <cmath>
    

    heißen, hat Jester gesagt.



  • //---------------------------------------------------------------------------
    #include <vcl\vcl.h>
    #pragma hdrstop

    #include "Unit1.h"
    #include <CMATH>

    //---------------------------------------------------------------------------
    #pragma resource "*.dfm"
    TForm1 *Form1;
    float Endkapital, Kapital, Prozent, Laufzeit;
    int Nr;
    .....
    ...

    so hab ich es eingegeben und es kommt: unable to open include file CMATH.h
    wie gesagt ich glaube ich habe dieses modul CMATH (oder vielleicht nennt man es auch anders)..falsch installiert,...ich hab nämlich nur diese ganzen files in den ordner kopiert in dem ich mein aktuelles projekt abgespeichert habe...mehr hab ich noch nicht getan



  • #include <cmath>
    

    Was ist an Copy&Paste so schwer? 🙄

    Wenn du erst vor einer Woche mit C++ angefangen hast, wäre es viel sinnvoller nicht gleich mit der Borland-VCL anzufangen. VCL ist nicht gerade ein Musterbeispiel für gute C++ Programmierung.
    Schreib lieber erstmal ein paar Konsolenanwendungen. Und versuch keine globalen Variablen zu nehmen. 🙂



  • also cd9000 ich habs jetzt auch ausprobiert <CMATH> kleingeschrieben, es ändert sich trotzdem nix...
    was das mit dem VCL betrifft da magst du schon recht habe, um ehrlich zu sein, weiß ich nicht mal wo der unterschied liegt, ich bin einfach in die buchhandlung und habe mir ein anfängerbuch für c++ gekauft, und da fand ich objektorientierte programmierung sehr interessant.

    es wäre nett wenn mir mal jemand den unterschied zwischen konsole und dem eben genannten, erklären könnte...oder mal ganz allgemein, die verschiedenen "arten" von c++. mit dem neu gewonnenen überblick könnte ich mich dann von einer anderen seite an c++ rannwagen...wie gesagt, bin neu, und ganz verrück aufs coden 🕶



  • so ich habs jetzt doch geschafft, dass er auch <cmath> annimmt, es lag an der falschen installation der bin und lib files...egal, mein hauptproblem bleib ja leider:

    //---------------------------------------------------------------------------
    #include <vcl\vcl.h>
    #pragma hdrstop
    
    #include "Unit1.h"
    #include <cmath>
    
    //---------------------------------------------------------------------------
    #pragma resource "*.dfm"
    TForm1 *Form1;
    double Endkapital, Kapital, Prozent, Laufzeit;
    int Nr;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
    	: TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    Nr++;
    if (Nr == 1)
    {
     Kapital = StrToFloat (Edit1->Text);
     Kapital = double(Kapital);
     Label1->Caption = "Bitte gebe nun den Prozenzsatz ein:";
     Edit1->Text = "";
    }
    
    if (Nr == 2)
    {
     Prozent = StrToFloat (Edit1->Text);
     Prozent = double(Prozent);
     Label1->Caption = "Wie lange wollen sie ihre " + String (Kapital) + "EUR anlegen?";
     Edit1->Text = "";
    }
    
    if (Nr == 3)
    {
     Laufzeit = StrToFloat (Edit1->Text);
     Laufzeit = double (Laufzeit);
     Endkapital = Kapital * pow( 1+ (Prozent / 100),Laufzeit);
     Label1->Caption = "Nach " + String (Laufzeit) + " Jahren haben sie " + String (Endkapital) + "EUR.";
     Nr = 0;
    }
    
    }
    //---------------------------------------------------------------------------
    

    FEHLER: Coulnd find a match for pow(double,double) in Zeile 42, also bei dem Befehl: Endkapital = Kapital * pow( 1+ (Prozent / 100),Laufzeit);

    was soll ich nun machen?

    bitnets



  • Schreib unter das #include <cmath> diese Zeile:

    using namespace std;
    


  • Hi,
    Du musst anstatt

    #include <cmath>
    

    einfach nur:

    #include <math.h>
    

    ist ja immerhin Borland 😃

    Naja bei mir geht's dann.



  • Das ist dann das, was man als "verschlimmbessern" bezeichnet.

    <cmath> ist C++, <math.h> ist C. Wie Programmieren hier C++, also <cmath>!



  • Wobei in cmath von Borland folgendes steht

    /*  cmath.h
    
        Standard C header file wrapper for math.h
    */
    
    /*
     *      C/C++ Run Time Library - Version 10.0
     *
     *      Copyright (c) 1997, 2000 by Inprise Corporation
     *      All Rights Reserved.
     *
     */
    
    /* $Revision:   9.0  $ */
    
    #define  __USING_CNAME__
    #include <math.h>
    #undef   __USING_CNAME__
    

    Also doch wieder math.h 😃


Anmelden zum Antworten