
CSE Home  About Us  Search  Contact Info 
This page has a collection of resources from a talk given at the 2016 CS4HS workshop at the University of Washington.
There seems to be an increasing awareness that it is important for students to be able to make what are known as back of the envelope calculations or ballparking. This fits in with a general goal of developing number sense on the part of our students.
An influential computer scientist named Jon Bentley has written about this in an ongoing column known as Programming Pearls. The full column is available in pdf format and is also available as a web page.
Here are some sample questions we discussed:
Stuart mentioned that his favorite estimating trick is that:
2^{10} ≈ 10^{3}There are many computer science algorithms where the number of steps performed for an input of size n will be approximately equal to the log_{2}(n). So for a thousand items, it takes 10 steps. For a million, it takes 20. For a billion, it takes 30. For a trillion, it takes 40. And so on. We like that kind of behavior where you have a small number of steps to perform even when the numbers get very large.
Bonus challenge: Stuart posed a related challenge. Suppose that you were stranded on a desert island and you wanted to have a log table. Not a physical table made out of logs, although that would seem more practical. We want a table showing the logarithm in base 10 for the numbers 1 through 10. If you didn't have a calculator or computer or slide rule or math book with you, how could you compute the logs in base 10? Two are really easy (the logs of 1 and 10). And one of them is easy given Stuart's favorite approximation mentioned above. And how do you get the others? Hint: the number 7 isn't very friendly (old math joke: Why is 6 afraid of 7? Because 7 8 9), but the square of 7 is your friend if you're thinking about approximations (what is it close to?). Stuart's answer can be found here.
Computer scientists are more oriented towards integers and powers of 2, but a lot of people care about real numbers and natural logarithms. Another interesting approximation that can be used for powers of e is that:
e^{3} ≈ 20Interestingly enough, since this relates e to a number involving 2 and 10, you can use this approximation in conjunction with the other one to do all sorts of computations.