www.pudn.com > work.rar > jiemi.m


mim=InputDlg('Please in put your key:','Input you key:'); 
xx=length(mim{:}); 
mima=setstr(mima); 
 
 mim=abs(mim{:});da=size(ff);Hx=da(1);Hy=da(2);pa=ff; 
      
    for i=xx:-1:2 
        ll=mim(i)-mim(i-1); 
        if ll>0 
            bb=magic(Hx);bb=inv(bb);pa=bb*pa; 
            if mod(Hx-ll,2)==1;Hx=Hx-ll;pa=pa(1:Hx,1:Hy); 
            else Hx=Hx-ll-1;pa=pa(1:Hx,1:Hy); 
            end 
        elseif ll<0 
            bb=magic(Hy);bb=inv(bb);pa=pa*bb;lll=abs(ll); 
            if mod(Hy-lll,2)==1;Hy=Hy-lll;pa=pa(1:Hx,1:Hy); 
            else Hy=Hy-lll-1;pa=pa(1:Hx,1:Hy); 
            end 
         else  bb=magic(Hx);bb=inv(bb);pa=bb*pa; 
            if mod(Hx,2)==1;pa=pa(1:Hx,1:Hy); 
            else Hx=Hx-1;pa=pa(1:Hx,1:Hy); 
            end 
        end 
end 
if mod(Hx,2)==1;bb=magic(Hx);bb=inv(bb);pa=bb*pa; 
   Hx=Hx-mim(1);pa=pa(1:Hx,1:Hy); 
else bb=magic(Hx);bb=inv(bb);pa=bb*pa; 
    Hx=Hx-mim(1)-1;pa=pa(1:Hx,1:Hy); 
end 
fff=mat2gray(pa); 
figure;imshow(fff);