 Students are expected to read the programs and to extend them and to write new ones.The task of formulating a method as a computer-executable program and debugging that program is a powerful exercise in the learning process.Also, once formalized procedurally, a mathematical idea becomes a tool that can be used directly to compute results."