This page describes the contents of the file **division.xls**, which you can download below.
The file contains a function to find remainders and three macros that do division.

In the file, a **"small" number** means it fits into one cell on a worksheet. A
**"big" number** has to be entered one digit per cell. You can play with big numbers of
up to 250 digits setting them out horizontally across the spreadsheet.

**Remainder function**

This is a simple function that tells you the remainder on dividing a big number by a small divisor.

In other words: function = bigNumber Mod smallDivisor.

**Version 1** divides a big number by a small divisor. It reads a digit of the big number, calculates
and writes a digit of the answer. It keeps going until it reaches the end of the big number. It is pretty
simple and contains no validation checks. It can't handle decimals, but you could write some code to do so if desired.

**Version 2** also divides a big number by a small divisor. It reads the big number into a VBA array
before beginning the calculation. As it reads the number, it checks the input. Each digit of the big number
goes into a separate element of the array. This version can handle decimals in both the big number and the answer.
The small divisor must be an integer. If you want a lot of decimals in the answer, it will wrap on to the next row.
It also looks for recurring patterns in the decimals.

**Version 3** divides a big number by another big number. Like version 2, it reads the big numbers into
VBA arrays before beginning the calculation and does identical validation checks. Both input numbers can include
decimals. It also looks for recurring patterns of decimals in the answer.

**Interesting things to do**

Although I keep referring to the "big" number, it is quite interesting to set it to 1. Enter different
divisors and look at the recurring patterns of decimals.

Go into the VBA code and change where the answer wraps. For example, calculate 1/17 and set the answer to wrap at 32.

How much change to the VBA code is needed to carry out the division in another base (not base 10)?

Use the file to solve the "units fore and aft" puzzle.

Download division.zip (49kb) | |

home |