Engineering Problem Solving with C (2nd Edition)