powermod.m
来自「vigenere密码解密的matlab实现」· M 代码 · 共 39 行
M
39 行
function y = powermod(a,z,n)% This function calculates y = a^z mod n% If a is a matrix, it calculates a(j,k)^z mod for every element in a[ax,ay]=size(a);% If a is negative, put it back to between 0 and n-1a=mod(a,n);% Take care of any cases where the exponent is negativeif (z<0), z=-z; for j=1:ax, for k=1:ay, a(j,k)=invmodn(a(j,k),n); end; end; end;for j=1:ax,for k=1:ay, x=1; a1=a(j,k); z1=z; while (z1 ~= 0), while (mod(z1,2) ==0), z1=(z1/2); a1=mod((a1*a1), n); end; %end while z1=z1-1; x=x*a1; x=mod(x,n); end; y(j,k)=x; end; %end for kend; %end for j
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?