I suggest:
Code:
// main.cpp
int ReadNumber();
void WriteAnswer();
int main()
{
WriteAnswer();
return 0;
}
Code:
// io.cpp
#include <iostream>
using namespace std;
int ReadNumber() {
int n = 0;
cin >> n;
return n;
}
void WriteAnswer() {
int n1 = ReadNumber();
int n2 = ReadNumber();
cout << (n1 + n2) << endl;
}
You might choose to place the forward declarations of ReadNumber and WriteAnswer in a header file. (I note that ReadNumber isn't actually used in main.cpp.)
Note my changes to WriteAnswer: the order of evaluation is generally unspecified, hence it is better to be clear by moving out the calls to ReadNumber since they have side effects.