program untuk mencari nilai x pangkat y

0
#include <cstdlib>
#include <iostream>

using namespace std;
class pangkat{
      friend istream& operator>>(istream&, pangkat&);
      friend ostream& operator>>(ostream&, pangkat&);
private:
        int a,b,c;
public:
       int perpangkatan (int a,int b);
       int output();
       };

istream& operator>>(istream& in, pangkat& c){
         cout<<"Masukan nilai a:";
         in>>c.a;
         cout<<"Masukan nilai perpangkatan:";
         in>>c.b;
         return in;
         }
int pangkat::perpangkatan(int a,int b){
    if (b==0)
    return (1);
    else if (b==1)
    return (a);
    else return (a*perpangkatan(a,b-1));
}

int pangkat::output(){
    c=perpangkatan (a,b);
    cout<<a<<"^"<<b<<":"<<c<<endl;
    return c;
}
int main (){
pangkat c;
cin>>c;
c.output ();

  system("PAUSE");
    return EXIT_SUCCESS;
}