The Programming By Doing problems on this site have been adapted from ProgrammingByDoing.com. Thank you Mr. Graham Mitchell for such a great set of problems!