## cs193p – Assignment #1 Extra Task #2

Figure out from the documentation how to use the iOS struct NumberFormatter to format your display so that it only shows 6 digits after the decimal point (instead of showing all digits that can be represented in a Double). This will eliminate (or at least reduce) the need for Autoshrink in your display. While you’re at it, make it so that numbers that are integers don’t have an unnecessary “.0” attached to them (e.g. show “4” rather than “4.0” as the result of the square root of sixteen). You can do all this for your description in the CalculatorBrain as well.

First of all, the last task had a tiny bug. when entering e.g. “0,” will show a leading zero:
[swift]
@IBAction func backSpace(_ sender: UIButton) {

if text.isEmpty || "0" == text {

}
[/swift]

## cs193p – Assignment #1 Task #7

Implement a UILabel in your UI which shows the sequence of operands and operations that led to (or is leading to if resultIsPending) what is (or “will be” if resultIsPending) showing in the display. If resultIsPending is true, put . . . on the end of the UILabel, else put =. If the userIsInTheMiddleOfTyping, you can leave the UILabel showing whatever was there before the user started typing the number. Examples …
a. touching 7 + would show “7 + …” (with 7 still in the display)
b. 7 + 9 would show “7 + …” (9 in the display)
c. 7 + 9 = would show “7 + 9 =” (16 in the display)
d. 7 + 9 = √ would show “√(7 + 9) =” (4 in the display)
e. 7 + 9 = √ + 2 = would show “√(7 + 9) + 2 =” (6 in the display)
f. 7 + 9 √ would show “7 + √(9) …” (3 in the display)
g. 7 + 9 √ = would show “7 + √(9) =“ (10 in the display)
h. 7 + 9 = + 6 = + 3 = would show “7 + 9 + 6 + 3 =” (25 in the display)
i. 7 + 9 = √ 6 + 3 = would show “6 + 3 =” (9 in the display)
j. 5 + 6 = 7 3 would show “5 + 6 =” (73 in the display)
k. 4 × π = would show “4 × π =“ (12.5663706143592 in the display)