you declare x inside main so it is out of scope in all other functions.
Either declare it as a global, not good practise; pass it to the subsequent functions as a parameter, better but not the best; or restructure your code.
You have common code in each function to read the operands, why? You only need to read them once so only write the code once.
You can also read all 3 variables at once
Why daisy chain your function calls? just call the correct function, dont keep passing it around to all the others. In fact the code is so simple you dont need function calls.
You have used if's, look at using a case statement.
And why not use characters for the operator, much easier to type + for add
PSEUDO CODE
declare operator as character value 0
declare operand1 as floating point value 0
declare operand2 as floating point value 0
decalre result as floating point value 0
output Enter calcuation
input operand1 operator operand2
SWITCH on operator
..case '+' : result = operand1 + operand2;
..case '-' : result = operand1 - operand2;
..case '*' : result = operand1 * operand2;
..case '/' : result = operand1 / operand2;
END SWITCH
output operand1 operator operand2 ' = ' result
If you are determined to use function calls each as taking two parameters and returning a value i.e.
PSEUDO CODE
DEFINE FUNCTION Add( input : left type floating point, input : right type floating point) returns floating point
result = left + right
return result
END FUNCTION
Then when you call it use the following convention
result = Add(operand1, operand2)
EDIT - Well at least you have attempted it which is a good sign. The point is pseudocode is a generic, it is abstracted away from a specific language purposefully to make it portable.
you should move the using namespace std to after the #includes and outside of the definition of main.
main should really always be declared as
int main(int argc, char *argv[])
You don't need to declare optionion of size 1. its size 1 by default.
istream, in this case it means cin and cout, check your chevrons, cout << , cin >>
Switch statements need opening and closing braces.
All of the errors you are getting will have generated an error mesage , depending upon which compiler you are using they may be cryptic or reasonably explainitory. Looking at the code in with the error message should put it in context and hopefully make it easier for you to debug your own errors.