I’ll separate test cases to families and will go from most popular to least popular (and I won’t include those that you covered)

**1. Edge cases**

1A. How do deal with limit of digits on the screen?

`99999999999 + 1 should be equal to 100000000000`

`10000000000 - 0.125 should be equal to 9999999999.875`

1B. Do you allow unlimited chain of operations? If yes, how are you going to represent it in history?

`1 * 1 * 1 * 1 * 1 * 1 * 1 * 1 * 1 * 4 should be equal 4`

**2. Misuse**

2A. User expect sign `%`

to calculate percentage and not modulo

`45% should be equal to 0.45`

2B. User must be able to start floating point number with `.`

`45 + .45 should be equal 45.45`

2C. User expects CE (Clear entry) to clear entry. Consider `←`

sign instead.

**3. Numbers and math**

3A. Bit truncation (classic)

`0.1 + 0.2 should be equal to 0.3`

3B. Division by 0 (classic) - any attempt shall be resolved in Error

`2 / 0 = + 2 should throw/output an Error`

**4. Accessibility**

4A. User shall be able to use calculator with keyboard input