Scheme, in contrast, supports both exact and inexact numbers and arithmetic. Of course, the base of the representation is 2, not 10, because Scheme uses the underlying computer's on-off machinery. Some numeric operations, though, produce inexact numbers. Scheme programmers can thus choose to use exact arithmetic or inexact arithmetic as necessary. For some problems, however, we may not wish to spend the extra time to produce exact results.
Scientific computations are a primary example.
In such cases, we may wish switch to inexact numbers and arithmetic. It is then important to ask a numerical analyst to study our program so that we understand how much the program's results can differ from the true results. Over the past few decades, this advanced topic, called numerical analysis, has become a subject of its own right in applied mathematics. Numerical analysts study how badly the result of a computation can differ from the mathematically correct result, and thus whether it is acceptable to trade speed of computation for lack of accuracy. The three exercises clarify why people use inexact arithmetic on computers and what risk they run into doing so.