How to find double output?

1 view (last 30 days)
Ammy
Ammy on 2 Mar 2022
Commented: Ammy on 2 Mar 2022
import java.math.*;
>> p=BigInteger('11');
>> m=BigInteger('2');
>> [A,B]=m.gcd(p);
Error using java.math.BigInteger/gcd
Java methods cannot be called with multiple output arguments
How to resolve this issue? I need both A and B.
Thanking in anticipation
  7 Comments
Ammy
Ammy on 2 Mar 2022
@Rik Thank you ver much!
I want to extract the following
[A,B] = gcd(m,p);
if A =1 then
a = mod(B,p)
otherwise a=0
I want to find a which depends on both A and B
Ammy
Ammy on 2 Mar 2022
@AndresVar, thank you very much but I want to deal with both the outputs.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 2 Mar 2022
import java.math.*;
p = BigInteger('11');
m = BigInteger('2');
A = m.gcd(p)
A = 1
B = m.modInverse(p)
B = 6
m.multiply(B).mod(p)
ans = 1
  3 Comments
Walter Roberson
Walter Roberson on 2 Mar 2022
import java.math.*;
p = BigInteger('11');
m = BigInteger('2');
a = inverse(m, p)
a = 6
%cross-check
cross_check = m.multiply(a).mod(p)
cross_check = 1
function a = inverse(b, p)
import java.math.*;
A = b.gcd(p);
if A == BigInteger('1')
a = b.modInverse(p);
else
a = BigInteger('0');
end
end
Ammy
Ammy on 2 Mar 2022
Thank you very much!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!