# Long division calculator with remainders and decimals

> Long division calculator that shows every step: quotient and remainder, the decimal quotient with its repeating block marked, and the fraction.

Interactive version: https://www.calcopenly.com/math/long-division-calculator
Subject: Math calculators

Long division splits a division into one small division per digit. Take the leading digits of the dividend, divide by the divisor, write the digit above, multiply, subtract, then bring down the next digit and repeat. When the divisor has decimals, both numbers are first multiplied by the same power of 10 so the divisor is a whole number.

For 1234 ÷ 7 the working gives 176 with remainder 2, since 7 × 176 = 1232. Carrying on past the decimal point with appended zeros gives 176.285714…, and because the remainder 2 comes back after six more digits, the block 285714 repeats forever. The layout marks that block with a bar.

A fraction's decimal either ends or repeats. It ends when the reduced denominator has no prime factors other than 2 and 5, as with 487 ÷ 32 = 15.21875. Otherwise the length of the repeating block is the smallest k for which 10ᵏ − 1 is divisible by q once its factors of 2 and 5 are removed: 6 for q = 7 and 96 for q = 97.

## Inputs

- **Dividend**: The number being divided. Whole numbers or decimals, e.g. 4.71.
- **Divisor**: The number you divide by. Decimals are shifted to a whole number first.
- **Answer as** (options: Decimal, Remainder)
- **Decimal places**: How far to carry the division when the decimal doesn't end or repeat sooner. The rounded quotient uses the same number of places.

## Results

- Decimal quotient — main result
- Quotient and remainder
- Whole-number quotient
- Remainder
- Rounded quotient
- Repeating block length (digits)
- As a mixed number

## Formula

$$
a = b \times q + r,\quad 0 \le r < b \qquad \frac{a}{b} = q + \frac{r}{b}
$$

## Worked examples

### 1234 ÷ 7 (default)

- Dividend: 1234
- Divisor: 7
- Answer as: Decimal
- Decimal places: 10
- **Decimal quotient: 176.(285714)**
- **Quotient and remainder: 176 R 2**
- **Whole-number quotient: 176**
- **Remainder: 2**
- **Repeating block length: 6 digits**
- **As a mixed number: 176 2/7**
- **Rounded quotient: 176.2857142857**
- Checked against: Python 3.8: divmod(1234, 7) = (176, 2); decimal.Decimal(1234) / 7 = 176.28571428571428571…; Fraction(1234, 7) = 1234/7

### 487 ÷ 32 (Calculator Soup worked example)

- Dividend: 487
- Divisor: 32
- Answer as: Remainder
- **Quotient and remainder: 15 R 7**
- **Whole-number quotient: 15**
- **Remainder: 7**
- **Decimal quotient: 15.21875**
- **Repeating block length: 0 digits**
- Checked against: Calculator Soup long division tutorial: 487 ÷ 32 = 15 R 7; 487/32 = 15.21875 by Python Fraction

### 65,321 ÷ 31 (Omni Calculator worked example)

- Dividend: 65321
- Divisor: 31
- Answer as: Remainder
- **Quotient and remainder: 2,107 R 4**
- **Whole-number quotient: 2,107**
- **Remainder: 4**
- **As a mixed number: 2,107 4/31**
- **Repeating block length: 15 digits**
- Checked against: Omni Calculator long division page: 65321 / 31 = 2107 r 4; period of 1/31 is 15 (ord₃₁ 10 = 15, Python pow(10, 15, 31) == 1)

### 4.71 ÷ 3.2 (decimal divisor)

- Dividend: 4.71
- Divisor: 3.2
- Answer as: Decimal
- Decimal places: 10
- **Decimal quotient: 1.471875**
- **Whole-number quotient: 1**
- **Remainder: 1.51**
- **Repeating block length: 0 digits**
- **As a mixed number: 1 151/320**
- Checked against: Calculator Soup long division with decimals example (4.71 ÷ 3.2 = 1.471… to 3 places); exact 471/320 = 1.471875 and 4.71 − 3.2 = 1.51 by Python Fraction

### 100 ÷ 7 (calculator.net example)

- Dividend: 100
- Divisor: 7
- Answer as: Decimal
- Decimal places: 10
- **Quotient and remainder: 14 R 2**
- **Decimal quotient: 14.(285714)**
- **As a mixed number: 14 2/7**
- Checked against: calculator.net long division page: 100 ÷ 7 = 14 R 2 = 14.285714…

### 1 ÷ 97: 96-digit repeating block (edge case)

- Dividend: 1
- Divisor: 97
- Answer as: Decimal
- Decimal places: 10
- **Whole-number quotient: 0**
- **Remainder: 1**
- **Repeating block length: 96 digits**
- **Rounded quotient: 0.0103092784**
- Checked against: Python: smallest k with pow(10, k, 97) == 1 is 96; Decimal(1)/97 = 0.01030927835051546…

## Questions

### How do you do long division step by step?

Repeat four moves: divide, multiply, subtract, bring down. For 487 ÷ 32: 48 ÷ 32 = 1, write 1, 1 × 32 = 32, 48 − 32 = 16; bring down 7 to make 167; 167 ÷ 32 = 5, 5 × 32 = 160, 167 − 160 = 7. No digits are left, so 487 ÷ 32 = 15 remainder 7. Check it: 32 × 15 + 7 = 487.

### How do you divide by a decimal?

Move the decimal point in the divisor to the right until it is a whole number, and move the point in the dividend the same number of places. For 4.71 ÷ 3.2, move both one place: 47.1 ÷ 32. The quotient stays the same because both numbers were multiplied by 10. Then divide as usual, putting the quotient's point directly above the dividend's: 47.1 ÷ 32 = 1.471875.

### How do you write a remainder as a decimal or fraction?

As a fraction, put the remainder over the divisor: 1234 ÷ 7 = 176 R 2 = 176 2/7. As a decimal, keep dividing: write a decimal point and zeros after the dividend and bring them down one at a time. 2/7 = 0.285714285714…, so 1234 ÷ 7 = 176.285714…, where the six digits 285714 repeat.

### How do you know when a decimal repeats?

Watch the remainders. Once only appended zeros are being brought down, each step depends only on the current remainder, and there are fewer possible remainders than the divisor. As soon as a remainder appears a second time, the digits between the two appearances repeat forever. Dividing by 7 always repeats within 6 digits; 1 ÷ 97 has a 96-digit repeating block.

### What is the remainder when dividing negative numbers?

It depends on the convention. This page divides the absolute values and gives the remainder the dividend's sign, as C and Java do: −17 ÷ 5 = −3 R −2, since 5 × (−3) − 2 = −17; Excel's QUOTIENT truncates to −3 the same way. The floored convention used by Python's // and % and by Excel's MOD gives −4 R 3 instead, since 5 × (−4) + 3 = −17.

### How accurate is the long division calculator with remainders and decimals calculator?

Accuracy depends on your inputs and the method's assumptions. Decimal arithmetic uses 50 significant digits, but estimates, numerical methods and source data can be less precise; the displayed rounding does not remove those limits. It is checked against 8 worked examples whose answers come from independent sources; for example, “1234 ÷ 7 (default)” is checked against Python 3.8: divmod(1234, 7) = (176, 2); decimal.Decimal(1234) / 7 = 176.28571428571428571…; Fraction(1234, 7) = 1234/7.

### Where does the method come from?

Common Core State Standards for Mathematics, 6.NS.B.2 and 6.NS.B.3: divide multi-digit numbers and decimals using the standard algorithm; Hardy & Wright, An Introduction to the Theory of Numbers, §9.6 (period of a recurring decimal is the order of 10 modulo q); Wolfram MathWorld: Long division; Wolfram MathWorld: Repeating decimal.

## Sources

- [Common Core State Standards for Mathematics, 6.NS.B.2 and 6.NS.B.3: divide multi-digit numbers and decimals using the standard algorithm](https://www.thecorestandards.org/Math/Content/6/NS/)
- Hardy & Wright, An Introduction to the Theory of Numbers, §9.6 (period of a recurring decimal is the order of 10 modulo q)
- [Wolfram MathWorld: Long division](https://mathworld.wolfram.com/LongDivision.html)
- [Wolfram MathWorld: Repeating decimal](https://mathworld.wolfram.com/RepeatingDecimal.html)
