Skip to content

unloved/homework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

The issue

Write a program in Ruby that takes one command line argument (referred to going forward as n). If n is not a perfect square print an appropriate error message and exit. If n is a perfect square then create a sequence from 1 to n and build a matrix from the sequence by walking in counter-clockwise spiral order. Examples below illustrate this for n=1,4,9,16 but your solution should work for any n that is a perfect square. Once you have built the matrix print it, ensuring even column widths as in examples below and then exit.

  Input:  1
  Output: 1

  Input:  4
  Output: 4 3
            1 2

  Input:  9
  Output: 5 4 3
          6 1 2
          7 8 9

  Input:  16
  Output: 16 15 14 13
          5  4  3  12
          6  1  2  11
          7  8  9  10

Output

> ruby homework.rb 2
is not perfect square

> ruby homework.rb 4
4 3
1 2

> ruby homework.rb 16
16 15 14 13
5  4  3  12
6  1  2  11
7  8  9  10

> ruby homework.rb 25
17 16 15 14 13
18 5  4  3  12
19 6  1  2  11
20 7  8  9  10
21 22 23 24 25

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages