Guest User

Untitled

a guest
Dec 13th, 2020
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 2.01 KB | None | 0 0
  1. val     = 1002578;
  2. z       = [19,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,0,0,751,0,29,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,431,0,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,17];
  3. idxz    = find(z>0);
  4. z       = z(z>0);
  5.  
  6. %Part A
  7. idx = 1;
  8. while 1
  9.     if any(mod(val+idx,z)==0)
  10.         disp(z(find(mod(val+idx,z)==0))*idx)
  11.         break
  12.     end
  13.     idx=idx+1;
  14. end
  15.  
  16. %Part B
  17. val = prod(z); % Upper bound
  18. while 1
  19.     if mod(val,z(1))==0
  20.         if mod(val+idxz(2)-1,z(2))==0
  21.             if mod(val+idxz(3)-1,z(3))==0
  22.                 if mod(val+idxz(4)-1,z(4))==0
  23.                     if mod(val+idxz(5)-1,z(5))==0  
  24.                         if mod(val+idxz(6)-1,z(6))==0
  25.                             if mod(val+idxz(7)-1,z(7))==0
  26.                                 if mod(val+idxz(8)-1,z(8))==0
  27.                                     if mod(val+idxz(9)-1,z(9))==0
  28.                                         val
  29.                                         break
  30.                                     end
  31.                                 else
  32.                                     val = val - prod(z(1:7));
  33.                                     continue    
  34.                                 end
  35.                             else
  36.                                 val = val - prod(z(1:6));
  37.                                 continue
  38.                             end
  39.                         else
  40.                            val = val - prod(z(1:5));
  41.                             continue
  42.                         end
  43.                     else
  44.                         val = val - prod(z(1:4));
  45.                         continue
  46.                     end
  47.                 else
  48.                     val = val - prod(z(1:3));
  49.                     continue    
  50.                 end
  51.             else
  52.                 val = val - prod(z(1:2));
  53.                 continue
  54.             end
  55.         else
  56.             val = val - z(1);
  57.             continue
  58.         end
  59.     else
  60.         val = val-mod(val,z(1));
  61.         continue
  62.     end
  63.     val=val-1;
  64. end
  65.  
Advertisement
Add Comment
Please, Sign In to add comment