An Introduction to Programming with C++