# Calculator

For the Euclidean Algorithm, Extended Euclidean Algorithm and multiplicative inverse.

#### Before you use this calculator

If you're used to a different notation, the output of the calculator might confuse you at first.

Even though this is basically the same as the notation you expect. If that happens, don't panic.

Just make sure to have a look the following pages first and then it will all make sense:

- Euclidean Algorithm

For the basics and the table notation - Extended Euclidean Algorithm

Unless you only want to use this calculator for the basic Euclidean Algorithm. - Modular multiplicative inverse

in case you are interested in calculating the modular multiplicative inverse of a number modulo n

using the Extended Euclidean Algorithm

**Input**

**Algorithm**

Choose which algorithm you would like to use.

**Numbers**

Enter the input numbers:

#### Output

This is the output of the**Extended Euclidean Algorithm**using the numbers a=

**383**and b=

**527531**:

a | b | q | r | s1 | s2 | s3 | t1 | t2 | t3 |
---|---|---|---|---|---|---|---|---|---|

383 | 527531 | 0 | 383 | 1 | 0 | 1 | 0 | 1 | 0 |

527531 | 383 | 1377 | 140 | 0 | 1 | -1377 | 1 | 0 | 1 |

383 | 140 | 2 | 103 | 1 | -1377 | 2755 | 0 | 1 | -2 |

140 | 103 | 1 | 37 | -1377 | 2755 | -4132 | 1 | -2 | 3 |

103 | 37 | 2 | 29 | 2755 | -4132 | 11019 | -2 | 3 | -8 |

37 | 29 | 1 | 8 | -4132 | 11019 | -15151 | 3 | -8 | 11 |

29 | 8 | 3 | 5 | 11019 | -15151 | 56472 | -8 | 11 | -41 |

8 | 5 | 1 | 3 | -15151 | 56472 | -71623 | 11 | -41 | 52 |

5 | 3 | 1 | 2 | 56472 | -71623 | 128095 | -41 | 52 | -93 |

3 | 2 | 1 | 1 | -71623 | 128095 | -199718 | 52 | -93 | 145 |

2 | 1 | 2 | 0 | 128095 | -199718 | 527531 | -93 | 145 | -383 |

**Answer**

So we found that:

- gcd(383, 527531) = 1
- s = -199718
- t = 145

**Verification**

If our answer is correct, then the absolute value of

`s × a + t × b`

is equal to the `gcd`

of `a`

and `b`

. We have:
- |
`s × a + t × b`

| = |-199718 × 383 + 145 × 527531| = |-76491994 + 76491995| = |1| = 1 `gcd(a, b)`

= gcd(383, 527531) = 1

`s × a + t × b`

| = `gcd(a, b)`

, so our calculation is correct!