34

Trachtenberg System for Rapid Mental Calculation

 5 years ago
source link: https://www.tuicool.com/articles/hit/eIbuiqq
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
j2qQNbV.jpg!web

The Trachtenberg system is a system of rapidmental calculation. The system consists of a number of readily memorized operations that allow one to perform arithmetic computations very quickly. It was developed by the Russian Jewish engineerJakow Trachtenberg in order to keep his mind occupied while being held in a Nazi concentration camp .

The rest of this article presents some methods devised by Trachtenberg. Some of the algorithms Trachtenberg developed are ones for general multiplication, division and addition. Also, the Trachtenberg system includes some specialized methods for multiplying small numbers between 5 and 13.

The chapter on addition demonstrates an effective method of checking calculations that can also be applied to multiplication.

Contents

General multiplication [ edit ]

The method for general multiplication is a method to achieve multiplications with low space complexity, i.e. as few temporary results as possible to be kept in memory. This is achieved by noting that the final digit is completely determined by multiplying the last digit of themultiplicands. This is held as a temporary result. To find the next to last digit, we need everything that influences this digit: The temporary result, the last digit of times the next-to-last digit of , as well as the next-to-last digit of times the last digit of . This calculation is performed, and we have a temporary result that is correct in the final two digits.

In general, for each position in the final result, we sum for all :

People can learn this algorithm and thus multiply four digit numbers in their head – writing down only the final result. They would write it out starting with the rightmost digit and finishing with the leftmost.

Trachtenberg defined this algorithm with a kind of pairwise multiplication where two digits are multiplied by one digit, essentially only keeping the middle digit of the result. By performing the above algorithm with this pairwise multiplication, even fewer temporary results need to be held.

Example:

To find the first digit of the answer, start at the first digit of the multiplicand:

The units digit of The first digit of the answer is

To find the second digit of the answer, start at the second digit of the multiplicand:

The units digit of plus the tens digit of plus The units digit of . . The second digit of the answer is and carry to the third digit.

To find the third digit of the answer, start at the third digit of the multiplicand:

The units digit of plus the tens digit of plus The units digit of plus the tens digit of plus The units digit of The third digit of the answer is and carry to the next digit.

To find the fourth digit of the answer, start at the fourth digit of the multiplicand:

The units digit of plus the tens digit of plus The units digit of plus the tens digit of plus The units digit of plus the tens digit of . carried from the third digit. The fourth digit of the answer is and carry to the next digit.

Continue with the same method to obtain the remaining digits.

vu2QRv7.png!web

2 Finger method

Trachtenberg called this the 2 Finger Method. The calculations for finding the fourth digit from the example above are illustrated at right. The arrow from the nine will always point to the digit of the multiplicand directly above the digit of the answer you wish to find, with the other arrows each pointing one digit to the right. Each arrow head points to a UT Pair, or Product Pair. The vertical arrow points to the product where we will get the Units digit, and the sloping arrow points to the product where we will get the Tens digits of the Product Pair. If an arrow points to a space with no digit there is no calculation for that arrow. As you solve for each digit you will move each of the arrows over the multiplicand one digit to the left until all of the arrows point to prefixed zeros.

An example of the algorithm multiplying numbers represented as variable length ASCII strings is shown below in C++.

 1 class Trachtenberg
 2 {
 3 public:
 4   void multiply(const char* a, const char* b)
 5   {
 6     size_t large = strlen(a);
 7     size_t small = strlen(b);
 8     if (large == 0 || small == 0) {
 9       answer = solution = new char[2]{ '0', '\0' };
10       return;
11     }
12     if (large < small) {
13       std::swap(a, b);
14       std::swap(large, small);
15     }
16     solution = new char[large + small];
17     answer = solution + large + small - 1;
18     *answer = '\0'; // zero terminate
19     size_t digits = 0;
20     const char* starta = a + large;
21     const char* startb = b + small;
22     intermediate = 0;
23     while (digits != small) {
24       multiplystep(++digits, --starta, startb);
25     }
26     for (size_t d = digits; d != large; ++d) {
27       multiplystep(digits, --starta, startb);
28     }
29     while (digits != 1) {
30       multiplystep(--digits, starta, --startb);
31     }
32     while (intermediate) {
33       *--answer = '0' + intermediate % 10;
34       intermediate /= 10;
35     }
36   }
37   const char* result() const { return answer;  }
38 
39 private:
40   size_t intermediate;
41   char* solution = nullptr;
42   char* answer = nullptr;
43 
44   void multiplystep(size_t digits, const char* starta, const char* startb)
45   {
46     const char* digita = starta;
47     const char* digitb = startb;
48     for (size_t n = 0; n != digits; ++n) {
49       --digitb;
50       intermediate += (*digita - '0') * (*digitb - '0'); // convert from ASCII string
51       ++digita;
52     }
53     *--answer = '0' + intermediate % 10; // convert back to string
54     intermediate /= 10;
55   }
56 };
NFrqq2Q.png!web

Setting up for Division

Division in the Trachtenberg System is done much the same as in multiplication but with subtraction instead of addition. Splitting the dividend into smaller Partial Dividends, then dividing this Partial Dividend by only the left-most digit of the divisor will provide the answer one digit at a time. As you solve each digit of the answer you then subtract Product Pairs (UT pairs) and also NT pairs (Number-Tens) from the Partial Dividend to find the next Partial Dividend. The Product Pairs are found between the digits of the answer so far and the divisor. If a subtraction results in a negative number you have to back up one digit and reduce that digit of the answer by one. With enough practice this method can be done in your head.

General addition [ edit ]

A method of adding columns of numbers and accurately checking the result without repeating the first operation. An intermediate sum, in the form of two rows of digits, is produced. The answer is obtained by taking the sum of the intermediate results with an L-shaped algorithm. As a final step, the checking method that is advocated removes both the risk of repeating any original errors and allows the precise column in which an error occurs to be identified at once. It is based on a check (or digit) sums, such as the nines-remainder method.

For the procedure to be effective, the different operations used in each stage must be kept distinct, otherwise there is a risk of interference.

Other multiplication algorithms [ edit ]

When performing any of these multiplication algorithms the following "steps" should be applied.

The answer must be found one digit at a time starting at the least significant digit and moving left. The last calculation is on the leading zero of the multiplicand.

Each digit has a neighbor , i.e., the digit on its right. The rightmost digit's neighbor is the trailing zero.

The 'halve' operation has a particular meaning to the Trachtenberg system. It is intended to mean "half the digit, rounded down" but for speed reasons people following the Trachtenberg system are encouraged to make this halving process instantaneous. So instead of thinking "half of seven is three and a half, so three" it's suggested that one thinks "seven, three". This speeds up calculation considerably. In this same way the tables for subtracting digits from 10 or 9 are to be memorized.

And whenever the rule calls for adding half of the neighbor, always add 5 if the current digit is odd. This makes up for dropping 0.5 in the next digit's calculation.

Multiplying by 2 [ edit ]

  • Rule : to multiply by 2, double each digit.From right hand side.

Multiplying by 3 [ edit ]

Rule:

  1. Subtract the rightmost digit from 10.
    1. Subtract the remaining digits from 9.
  2. Double the result.
  3. Add half of the neighbor to the right, plus 5 if the digit is odd.
  4. For the leading zero, subtract 2 from half of the neighbor.

Example: 492 × 3 = 1476

Working from right to left:

  • (10 − 2) × 2 + Half of 0 (0) = 16. Write 6, carry 1.
  • (9 − 9) × 2 + Half of 2 (1) + 5 (since 9 is odd) + 1 (carried) = 7. Write 7.
  • (9 − 4) × 2 + Half of 9 (4) = 14. Write 4, carry 1.
  • Half of 4 (2) − 2 + 1 (carried) = 1. Write 1.

Multiplying by 4 [ edit ]

Rule:

  1. Subtract the right-most digit from 10.
    1. Subtract the remaining digits from 9.
  2. Add half of the neighbor, plus 5 if the digit is odd.
  3. For the leading 0, subtract 1 from half of the neighbor.

Example: 346×4 = 1384

Working from right to left:

  • (10 − 6) + Half of 0 (0) = 4. Write 4.
  • (9 − 4) + Half of 6 (3) = 8. Write 8.
  • (9 − 3) + Half of 4 (2) + 5 (since 3 is odd) = 13. Write 3, carry 1.
  • Half of 3 (1) − 1 + 1 (carried) = 1. Write 1.

Multiplying by 5 [ edit ]

  • Rule : to multiply by 5: Take half of the neighbor, then, if the current digit is odd, add 5.

Example: 42×5=210

Half of 2's neighbor, the trailing zero, is 0. Half of 4's neighbor is 1. Half of the leading zero's neighbor is 2. 43×5 = 215 Half of 3's neighbor is 0, plus 5 because 3 is odd, is 5. Half of 4's neighbor is 1. Half of the leading zero's neighbor is 2. 93×5=465 Half of 3's neighbor is 0, plus 5 because 3 is odd, is 5. Half of 9's neighbor is 1, plus 5 because 9 is odd, is 6. Half of the leading zero's neighbor is 4.

Multiplying by 6 [ edit ]

  • Rule: Add half of the neighbor to each digit. If the current digit is odd, add 5.

Example: 357 × 6 = 2142

Working right to left,

7 has no neighbor, add 5 (since 7 is odd) = 12. Write 2, carry the 1. 5 + half of 7 (3) + 5 (since the starting digit 5 is odd) + 1 (carried) = 14. Write 4, carry the 1. 3 + half of 5 (2) + 5 (since 3 is odd) + 1 (carried) = 11. Write 1, carry 1. 0 + half of 3 (1) + 1 (carried) = 2. Write 2.

Multiplying by 7 [ edit ]

Rule:

  1. Double each digit.
  2. Add half of its neighbor.
  3. If the digit is odd, add 5.

Example: 523 × 7 = 3,661.

3×2 + 0 + 5 = 11, 1. 2×2 + 1 + 1 = 6. 5×2 + 1 + 5 = 16, 6. 0×2 + 2 + 1 = 3.

3661.

Multiplying by 8 [ edit ]

Rule:

  1. Subtract right-most digit from 10.
    1. Subtract the remaining digits from 9.
  2. Double the result.
  3. Add the neighbor.
  4. For the leading zero, subtract 2 from the neighbor.

Example: 456 × 8 = 3648

Working from right to left:

  • (10 − 6) × 2 + 0 = 8. Write 8.
  • (9 − 5) × 2 + 6 = 14, Write 4, carry 1.
  • (9 − 4) × 2 + 5 + 1 (carried) = 16. Write 6, carry 1.
  • 4 − 2 + 1 (carried) = 3. Write 3.

Multiplying by 9 [ edit ]

Rules:

  1. Subtract the right-most digit from 10.
    1. Subtract the remaining digits from 9.
  2. Add the neighbor.
  3. For the leading zero, subtract 1 from the neighbor.

For rules 9, 8, 4, and 3 only the first digit is subtracted from 10. After that each digit is subtracted from nine instead.

Example: 2,130 × 9 = 19,170

Working from right to left:

  • (10 − 0) + 0 = 10. Write 0, carry 1.
  • (9 − 3) + 0 + 1 (carried) = 7. Write 7.
  • (9 − 1) + 3 = 11. Write 1, carry 1.
  • (9 − 2) + 1 + 1 (carried) = 9. Write 9.
  • 2 − 1 = 1. Write 1.

Multiplying by 11 [ edit ]

Rule: Add the digit to its neighbor. (By "neighbor" we mean the digit on the right.)

Example:

(0 + 3) (3 + 4) (4 + 2) (2 + 5) (5 + 0) 3 7 6 7 5

To illustrate:

Thus,

Multiplying by 12 [ edit ]

Rule: to multiply by12:

Starting from the rightmost digit, double each digit and add the neighbor. (The "neighbor" is the digit on the right.)

If the answer is greater than a single digit, simply carry over the extra digit (which will be a 1 or 2) to the next operation. The remaining digit is one digit of the final result.

Example:

Determine neighbors in the multiplicand 0316:

  • digit 6 has no right neighbor
  • digit 1 has neighbor 6
  • digit 3 has neighbor 1
  • digit 0 (the prefixed zero) has neighbor 3

Publications [ edit ]

  • Rushan Ziatdinov, Sajid Musa. Rapid mental computation system as a tool for algorithmic thinking of elementary school students development . European Researcher 25(7): 1105-1110, 2012 [1] .
  • The Trachtenberg Speed System of Basic Mathematics by Jakow Trachtenberg, A. Cutler (Translator), R. McShane (Translator), was published by Doubleday and Company, Inc. Garden City, New York in 1960.

The book contains specific algebraic explanations for each of the above operations.

Most of the information in this article is from the original book.

The algorithms/operations for multiplication etc. can be expressed in other more compact ways that the book does not specify, despite the chapter on algebraic description.

In popular culture [ edit ]

The 2017 American film Gifted revolves around a child prodigy who at the age of 7 impresses her teacher by doing calculations in her head using the Trachtenberg system.

Other systems [ edit ]

There are many other methods of calculation in mental mathematics. The list below shows a few other methods of calculating, though they may not be entirely mental.

Software [ edit ]


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK