The pow function takes two doubles. x and y were declared as integers. When you put two integers in the pow function the compiler doesn't know what to do.
You have two choices. You can either declare x and y as type "float" or "double" instead of "int", or you can do this:
cout << " The answer is " << ( pow( (double)x, (double)y)) << endl;