An Introduction to programming and problem solving with Pascal - Perlman, David M (1981)