CS100M Fall 2006
Due: September 21, 2006 (Thursday) at 6pm
Submit your files on-line in CMS before the project deadline.
Both correctness and good programming style contribute to
your project score.
You must work either on your own or with one partner. You may discuss background issues and general solution strategies
with others, but the project you submit must be the work of just you (and your partner). If you work with a partner, you and
your partner must register as a group in CMS and submit your work as a group.
In this assignment, you will work with
, write and call
, and experiment with
Along the way, you will explore some mathematical ideas and learn about the
Bisection Method for root approximation.
The last question talks about
We’ve done the decomposition for you in this project.
Learn from this example and apply
decomposition (modular design) in the future.
Do not use arrays (vectors) in this project.
of a sequence of numbers is the number that occurs most frequently.
87, 92, 92, 98, 98, 98, 100
mode is 98
3, 4, 4, 6, 8, 9, 9
mode is 4 or 9
Write a script to determine the mode of a user-entered sequence of numbers.
If there are multiple modes
you may report any one of them.
You may assume that the sequence is
and is entered one
number at a time (prompted by the program) in
The user enters a negative
number to terminate the sequence, but the negative number is a stopping signal only and does not belong
to the sequence.
(The question has been discussed in lecture—refer to your lecture notes.
The notes also show examples of the “interactive
framework” for soliciting user input repeatedly.)
Submit your script file
Root approximation using the Bisection Method
Approximation is an important solution strategy for many problems.
When an “exact” solution for a
problem is too difficult or too computationally expensive to obtain, one may turn to approximation
Simple numerical methods can be used to approximate roots or extrema (minimum or
Some well-known root finding methods include Newton-Raphson, fixed-point iteration, and