How to resolve the algorithm Modular inverse step by step in the Arturo programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm Modular inverse step by step in the Arturo programming language

Table of Contents

Problem Statement

From Wikipedia: In modular arithmetic,   the modular multiplicative inverse of an integer   a   modulo   m   is an integer   x   such that Or in other words, such that: It can be shown that such an inverse exists   if and only if   a   and   m   are coprime,   but we will ignore this for this task.

Either by implementing the algorithm, by using a dedicated library or by using a built-in function in your language,   compute the modular inverse of   42 modulo 2017.

Let's start with the solution:

Step by Step solution about How to resolve the algorithm Modular inverse step by step in the Arturo programming language

Source code in the arturo programming language

modInverse: function [a,b][
    if b = 1 -> return 1

    b0: b   x0: 0   x1: 1
    z: a

    while [z > 1][
        q: z / b        t: b
        b: z % b        z: t
        t: x0           x0: x1 - q * x0
        x1: t
    ]
    (x1 < 0) ? -> x1 + b0 
               -> x1
]

print modInverse 42 2017


  

You may also check:How to resolve the algorithm Knight's tour step by step in the CoffeeScript programming language
You may also check:How to resolve the algorithm Least common multiple step by step in the NetRexx programming language
You may also check:How to resolve the algorithm Even or odd step by step in the Haskell programming language
You may also check:How to resolve the algorithm Palindromic gapful numbers step by step in the Mathematica/Wolfram Language programming language
You may also check:How to resolve the algorithm System time step by step in the Scala programming language