serdarshefketov

SpiralMatrix

Jan 5th, 2022
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const number = 4;
  2.  
  3. const matrix = Array.from({ length: number}); // number [empty]
  4.  
  5. for(let i = 0; i < number; i++){
  6.     matrix[i] = [];
  7. }
  8. let n = 4;
  9. let counter = 1;
  10. let startRow = 0;
  11. let endRow = n - 1;
  12. let startCol = 0;
  13. let endCol = n - 1;
  14.  
  15. while(startCol <= endCol && startRow <= endRow) {
  16.     for(let i = startCol; i <= endRow; i++){
  17.         matrix[i][startCol] = counter;
  18.         counter++;
  19.     }
  20.     startCol++;
  21.    
  22.     for(let i = startCol; i <= endCol; i++){
  23.         matrix[endCol][i] = counter;
  24.         counter++;
  25.     }
  26.    
  27.     endRow--;
  28.    
  29.     for(let i = endRow; i >= startRow; i--){
  30.         matrix[i][endCol] = counter;
  31.         counter++;
  32.     }
  33.    
  34.     endCol--;
  35.    
  36.     for(let i = endCol; i >= startCol; i--){
  37.         matrix[startRow][i] = counter;
  38.         counter++;
  39.     }
  40.     startRow++;
  41. }
  42.  
  43. console.table(matrix);
  44.  
  45.  
Advertisement
Add Comment
Please, Sign In to add comment