a blog about things that I've been thinking hard about

How to Do Cube Roots of 9 Digit Numbers in Your Head

19 September, 2005
cube root of a 9 digit number

To get the first digit, calculate the cube root of the first 3 digits.

To get the last digit, calculate the cube root mod 10.

To get the middle digit, calculate the cube root mod 11.

Update (23 April 2006): try out the new Practice Page

What is a Cube Root?

(Just in case you don't already know.) A number cubed is that number times itself times itself. For example, 4 cubed, normally written 43, is 4 × 4 × 4 = 64. The cube root goes in the opposite direction, so the cube root of 64 is 4.

To give a larger example, 657 cubed = 6573 = 657 × 657 × 657 = 283593393, so the cube root of 283593393 is 657.

Doing it in your head

Now I'll have to admit that I used a calculator to calculate that 6573 = 283593393 (actually I'm lying – I did it in Python, but that's beside the point). But I am claiming that you can learn to calculate the cube root of numbers like 283593393, by mental arithmetic alone.

First Cheat

When I say "the cube root of numbers like 283593393", there is of course something special about 283593393, which is that it is a cube of a whole number, so it's cube root is a whole number. Although there are 999999999 numbers up to 9 digits long, only 999 of these numbers have cube roots that are whole numbers.

But if you are giving a display of your mental arithmetic powers to an audience, this is no problem. Give someone in your audience a calculator. Tell them to think of a 3 digit number, multiply it by itself twice and tell you the answer (which will be 7 to 9 digits long). You will then tell them what the original number was. Don't ask them to supply a random 9 digit number, because a random 9 digit number probably won't be a cube of a whole number, and you will be in trouble, and the following strategies won't work.

Cube Roots up to 3 Digits

If you had to calculate the cube root of a 3 digit number, it would be quite easy. Here is a table of cubes from 1 to 10:

n n3
1 1
2 8
3 27
4 64
5 125
6 216
7 343
8 512
9 729
10 1000

To do cube roots of 9 digit numbers, you are going to have to be familiar with these first 10 cubes. So you might as well memorise them. And if you have memorised them, then there isn't really any trick to calculating the cube roots.

Cube Roots up to 6 Digits

What is the cube root of 300763?

The cube root of a 6 digit number has to be less than 100, so you could consider memorising the first 100 cubes. However that is a bit much, and it is also unnecessary, so I won't suggest that you memorise that many cubes.

Let's look at the first 3 digits, which are "300". Now 300 is greater than 216 = 63 and less than 343 = 73. Which means that 300763 is greater than 216000 = 603 and less than 343000 = 703. So we know that our answer is somewhere between 60 and 70.

To get the last digit easily, we need to use modular arithmetic, and to make it really easy, we will do arithmetic modulo 10. All this means is doing addition, subtraction and multiplication, keeping only the last digit of the answer. A modulo 10 version of the previous table is as follows:

n n3 mod 10
1 1
2 8
3 7
4 4
5 5
6 6
7 3
8 2
9 9
0 0

A curious pattern emerges: if we cube a number modulo 10 twice, we get back to where we started. So 83 = 512 = 2 (mod 10, where "mod" is an abbreviation for "modulo"), and 23 = 8 = 8 (mod 10).

Applying this pattern to our problem cube 300763, we deduce that the last digit must be 33 = 27 = 7 (mod 10). So the answer must be a number in between 60 and 70 with last digit 7, which can only be 67.

Cube Roots up to 9 Digits

Using the same techniques, we can easily calculate the first and last digits of the cube root of a 9 digit number (assuming, as already stated, that it is known to be the cube of a whole number). So, for example, looking at 580093704, we compare 580 to 512 and 729, to deduce that the cube root is between 800 and 900. The last digit is 4, so the last digit of the cube root must be 43 = 64 = 4 (mod 10).

All that is left to find is the middle digit. Unfortunately we have extracted all the information we can out of size comparisons and mod 10 arithmetic, and we need to think of something else. One "something else" is a different modulus. However this means doing long divisions in your head to get remainders, which is possibly a bit much work. We need a modulus for which there is an easy shortcut. And it has to be bigger than 10, if it is to uniquely choose the one correct answer from 10 possibilities.

There are two major candidates, which are 9 and 11.

Modulo 9 is easy to calculate, because you calculate the remainder of a number divided by 9 by just adding the digits. For example 580093704 = 5+8+0+0+9+3+7+0+4 = 36 mod 9 = 3+6 (mod 9) = 9 (mod 9) = 0. One problem with 9 is that it isn't bigger than 10. However, this might not be completely fatal.

There is a short cut for modulo 11, but it is a little harder. Starting from the right end, you alternatively add and subtract digits. So 580093704 = 4 - 0 + 7 - 3 + 9 - 0 + 0 - 8 + 5 = 14 = 4 - 1 = 3 (modulo 11). (In this case we luckily ended up with a positive number less than 11, but you might have to adjust the answer to a number in this range by adding or subtracting 11.)

To make use of these moduli, we need to calculate the tables of cubes mod 9 and 11:

n n3 n3 mod 9 n3 mod 11
0 0 0 0
1 1 1 1
2 8 8 8
3 27 0 5
4 64 1 9
5 125 8 4
6 216 0 7
7 343 1 2
8 512 8 6
9 729 0 3
10 1000 1 10

Unfortunately there is a problem with mod 9, which is that there are only 3 possible cubes mod 9, which means that going the other way there are still going to be 3 or 4 choices.

Mod 11 works better, and we can see that each value from 0 to 10 occurs only once in the list of cubes modulo 11 (from 0 to 10), which means that cube roots can be calculated modulo 11.

Returning back to the worked example, 580093704 = 3 modulo 11, so (looking at the table, which, by the way, you will have to memorise) its cube root = 9 modulo 11. We've already determined that the first digit is 8 and the last digit is 4. If we think of the cube root as 8x4, for some x, then we have the equation 4 - x + 8 = 9 modulo 11, i.e. 12 - x = 9 modulo 11, so x = 3 modulo 11. Which gives a final (and correct) answer of 834.

Conclusion

So there you have it, how to calculate cube roots of 9 digit numbers in your head. There is a certain amount of memorisation and fiddly addition and subtraction to do, and you probably need to be confident with these before you try it out as a party trick. I suggest that it will also be much easier if you make sure that you can see the number you are calculating the cube root of, so that you are not saddled with the additional mental load of having to memorise that number.

If you liked this page ...

If you liked this page, you might also like my PrimeShooterTM Space-Invaders-style Javascript game, where you have to kill the attacking numbers by firing prime factors at them until they are reduced to 1.

Vote for or comment on this article on Reddit or Hacker News ...