Turbo pascal a problem-solving approach (Addison-Wesley, 1986)