Guest User

Untitled

a guest
May 27th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.48 KB | None | 0 0
  1. A = [1 2;
  2. 3 4];
  3.  
  4. B = [5 6;
  5. 7 8];
  6.  
  7. C = [A B;
  8. B A];
  9.  
  10. %so that:
  11. C = [1 2 5 6;
  12. 3 4 7 8;
  13. 5 6 1 2;
  14. 7 8 3 4];
  15.  
  16. C = [A B A;
  17. B A B;
  18. A B A];
  19.  
  20. C = [A B A B;
  21. B A B A;
  22. A B A B;
  23. B A B A];
  24.  
  25. function [C] = matrices(x)
  26.  
  27. A = [1 2; 3 4];
  28. B = [5 6; 7 8];
  29.  
  30. %Determine size N of matrix.
  31. N = size(A,1);
  32.  
  33. %Assign passed argument to M.
  34. M = x;
  35.  
  36. %mod operator to determine odd or even M.
  37. if(~mod(M,2))
  38. %concatenate A and B and repeat matrix
  39. C = repmat([cat(2,[A B]);cat(2,[B A])],M/2);
  40. else
  41. %concatenate A and B and repeat matrix
  42. C = repmat([cat(2,[A B]);cat(2,[B A])],(M+1)/2);
  43. %remove additional rows and columns created by matrix repetition
  44. C = C(:,1:end-N);
  45. C = C(1:end-N,:);
  46. end
  47. end
  48.  
  49. D = [1 2 5 6
  50. 3 4 7 8
  51. 5 6 1 2
  52. 7 8 3 4]
  53.  
  54. D = [1 2 5 6 1 2
  55. 3 4 7 8 3 4
  56. 5 6 1 2 5 6
  57. 7 8 3 4 7 8
  58. 1 2 5 6 1 2
  59. 3 4 7 8 3 4]
  60.  
  61. D = [1 2 5 6 1 2 5 6
  62. 3 4 7 8 3 4 7 8
  63. 5 6 1 2 5 6 1 2
  64. 7 8 3 4 7 8 3 4
  65. 1 2 5 6 1 2 5 6
  66. 3 4 7 8 3 4 7 8
  67. 5 6 1 2 5 6 1 2
  68. 7 8 3 4 7 8 3 4]
Add Comment
Please, Sign In to add comment