a53

PatratMagic2

a53
Jan 26th, 2020
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.80 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstring>
  3. using namespace std;
  4.  
  5. void generateSquare(int n)
  6. {
  7. int magicSquare[n][n];
  8. memset(magicSquare,0,sizeof(magicSquare));
  9. int i=n/2;
  10. int j=n-1;
  11. for(int num=1;num<=n*n;)
  12. {
  13. if(i==-1&&j==n)
  14. j=n-2,i=0;
  15. else
  16. {
  17. if(j==n)
  18. j=0;
  19. if(i<0)
  20. i=n-1;
  21. }
  22. if(magicSquare[i][j])
  23. {
  24. j-=2;
  25. ++i;
  26. continue;
  27. }
  28. else
  29. magicSquare[i][j]=num++;
  30. ++j;--i;
  31. }
  32. for(i=0;i<n;++i)
  33. {
  34. for(j=0;j<n;++j)
  35. cout<<magicSquare[i][j]<<' ';
  36. cout<<'\n';
  37. }
  38. }
  39.  
  40. int main()
  41. {
  42. int n;
  43. cin>>n;
  44. generateSquare(n);
  45. return 0;
  46. }
Add Comment
Please, Sign In to add comment