Potenzieren



  • Wie kann ich in meinem C++-Quellcode Potenzen angeben ???

    Für y=x² muss ich beispielsweise immer y=x*x schreiben.

    images/smiles/icon_confused.gif

    [ Dieser Beitrag wurde am 02.04.2002 um 19:03 Uhr von JMD-Software editiert. ]



  • y=x^2; // oder ?
    


  • Hi,

    wenn ich es recht verstehe, willst du zb. eine Ausgabe wie folgt.
    ->die Zweierpotenz von 2 ist 4!

    int n_pow(int x, int expo)
    {
     int i = 1;
      while(i<=expo)
      {
       x*=x;
      }
    return x;
    } 
    int pow(int x)
    {
      return x*x;
    }
    
    void main()
    {
    int x,y;
    //Zahl einlesen
    cin >> x;
    cin >> y;
    cout <<" Die Zweierpotenz von " <<x <<"ist" <<pow(x) <<endl;
    cout <<" Die " <<expo <<"Potenz von " <<x <<"ist" <<pow(x,y) <<endl;
    }
    

    [ Dieser Beitrag wurde am 23.11.2001 um 18:25 Uhr von swanson:-[ editiert. ]

    [ Dieser Beitrag wurde am 23.11.2001 um 18:27 Uhr von swanson:-[ editiert. ]



  • Seid Ihr des Wahnsinns fette Beute???

    a) der Operator ^ bedeutet in C und C++ XOR - also bitweise Verknüpfung exklusiv Oder. Wir machen hier kein Pascal...

    b) in der math.h gibt's eine Funktion pow, die direkt die Potenz mit Hilfe des math. Coprozessors ausrechnet, und nicht eine rekursive Funktion bemüht. Das mit der Rekursion ist zu Übungszwecken ganz nett, aber viel zu lammsamm.

    #include <math.h>  // oder C++-Header: #include <cmath>
    
    double val1 = pow(x, 2); // x*x
    double val2 = pow(x, 3.5); // mach das mal mit der rekursiven Funktion
    

    Hinweis: die Operation x*x wird etwas schneller ausgeführt als pow(x,2). Man sollte daher für Quadrierung das x*x wählen, für alle anderen Potenzen aber pow.

    [ Dieser Beitrag wurde am 23.11.2001 um 19:01 Uhr von Marc++us editiert. ]


Anmelden zum Antworten