# Cross multiplication: How to multiply 3+ digit numbers?

#1

I’ve recently learned of cross multiplication, and am now able to multiply two two-digit numbers rather fast using it. Now, how do I use it to multiply 3-digit numbers? n-digit numbers? Any good resources on the topic?

(Josh Cohen) #2

By coincidence I was just learning this today. Here is 2x2:

Example:

```  1 2
x 3 4
```

2 * 4 = 8
2 * 3 + 1 * 4 = 10 (zero in the tens column, carry the one to the next step)
1 + 1 * 3 = 4

Three digit is similar, but with an extra step in the middle:

```  123
x 456
```

3 * 6 = 18 (eight ones, carry the one)
1 + 3 * 5 + 2 * 6 = 28 (eight, carry the two)

Then:

2 + 3 * 4 + 1 * 6 + 2 * 5 = 30 (zero, carry the three)

3 + 2 * 4 + 1 * 5 = 16 (six, carry the one)

1 + 1 * 4 = 5

I don’t know about more than three, but maybe it’s similar.

#3

Thanks, this helped a lot.

(Josh Cohen) #4

If you find the technique for four digit numbers, let me know.

I was searching for my Secrets of Mental Math book today, but wasn’t able to find it.

(Josh Cohen) #5

I thought I had figured it out, but I’m missing a 2 somewhere:

```  1234
x 1234
```

4 * 4 = 16 (carry the one)
1 + 3 * 4 + 3 * 4 = 25 (carry the two)
2 + 2 * 4 + 2 * 4 + 3 * 3 = 27 (carry the two)
2 + 3 * 1 + 3 * 1 + 2 * 2 = 12 (carry one)
1 + 2 * 1 + 2 * 1 = 5
1 + 1 * 1 = 1

(Still working on it)

(Josh Cohen) #6

It works with this method:
http://www.sapnaedu.in/multiply-any-4-digit-numbers/

#7

Hi, I’ve been using this method for a long time, and you can multiply any nxn digit number with this, the problems that any person might have is the sum of all the numbers, and keeping track of the carry.

123
×123 is easy, since there’s a small amount of numbers

123456789
×123454321 is a little bit hard, but you can always use the same method.

If you have any question, feel free to ask.

#8

If you add the zeros in the calculation, you will immediately spot the error.
The 3 is not ‘3’ but actually 30.
We just think it as 3 in order to make the numbers smaller.

The 3 is 30. The 2 is 200 and the 1 is 1000.
Let s do the steps again with the zeros added.

If you look at the steps and the number of zeros at each step you see that you forgot the one with the combinations that results in 3 zeros.
These are 1000 * 4 + 200 * 30 + 30 * 200 + 4 * 1000.

#9

Thanks for the tips. But how to do cross multiplication and give the answers forwardly? As in, beginning with the first number of the solution?

(Josh Cohen) #10

Thanks… I’ll try a few more problems tomorrow to make sure I understand it.

#11

Hi ArsDenisov.

If I understand your question, then, you’ll have to start from the left instead of the right. This is better since you can say the answer in just a few seconds, number by number.

123
×123

If we do it left ti right, it’ll be:

11:1
(1
2)+(1*2): 4’ (the ’ sign is the carry from the following operation)

(13)+(22)+(3*1): 0’

At this point, we know that our answer begins with 15

(23)+(32): 2
3*3: 9

#12

Think of it this way.
First do the ‘singles’. Thus 4x4.
Then do the ‘tens’. Or all combinations that end in one zero.
Then 2 zeros, then 3, etc.

If you go from left to right, in the example of 1234 x 1234, do the millions first, then the hundred thousands, then the ten thousands, working downward.

1234x1234 must be bigger than 1000x1000 so the order of the answer is about 1 million.
12x12 = 144 so the answer will probably be around one and a half million.

If you do this and your final answer for example is around 150,000 then you know you missed a step.

(Josh Cohen) #13

Thanks… The estimation is a good idea. I worked through a few more problems and get it now.

#14

Check here to find how to multiply two digit numbers trick

Riyan

#15

There is a general way to know how to multiply two n-digit numbers using this direct sum method…
I’ll describe it in a more algebraic notation, but you can easily draw all the “multiplication lines” just looking at it, for any size of number after understanding it.

First, the numbers of steps for the operation is 2n-1

Each step is related to the positional value of every digit in the result (right to left, step 0 works for “ones”=100; step 1 works for “tens”=101; step 2 works for “hundrends”=102, etc.)

So, for example, 5x5 multiplication has 9 steps (2*5-1).
In this case, if Result R = X * Y ; Let
X = x[4] x[3] x[2] x[1] x[0] (x[i] are X digits, i is the index for position value)
Y = y[4] y[3] y[2] y[1] y[0] (y[j] are Y digits, j is the index for position value)
R = r[8] r[7] r[6] r[5] r[4] r[3] r[2] r[1] r[0] (r[z] are R “digits”)

• Now, in every step, look for the sum of the digits’ index position equals the index position of result:
That is: for each r[z], sum of all x[i]*y[j] that i+j equals z (plus carry of r[z-1]);
```In a 5x5 multiplication (for simplicity r0 is the same of r[0]):

Step 0 (z = 0; work all x[i]*y[j], i+j = 0):
r0 = x0*y0

Step 1 (z = 1; work all x[i]*y[j], i+j = 1):
r1 = x1*y0 + x0*y1

Step 2:
r2 = x0*y2 + x1*y1 + x2*y0

Step 3:
r3 = x0*y3 + x1*y2 + x2*y1 + x3*y0

Step 4:
r4 = x0*y4 + x1*y3 + x2*y2 + x3*y1 + x4*y0

Step 5:
r5 = x1*y4 + x2*y3 + x3*y2 + x4*y1

Step 6:
r6 = x2*y4 + x3*y3 + x4*y2

Step 7:
r7 = x3*y4 + x4*y3

Step 8:
r8 = x4*y4```

I hope this helps