draw_grid_of_squares.sf 574 B

123456789101112131415161718192021222324252627282930313233343536
  1. #!/usr/bin/ruby
  2. func draw_grid(n, k) {
  3. if (n % k != 0) {
  4. warn "#{n} is not divisible by #{k}"
  5. }
  6. for a in (0 .. n) {
  7. for b in (0 .. n) {
  8. var u = (a %% n/k)
  9. var v = (b %% n/k)
  10. if (u && v) {
  11. print '+'
  12. }
  13. elsif (u) {
  14. print '-'
  15. }
  16. elsif (v) {
  17. print '|'
  18. }
  19. else {
  20. print ' '
  21. }
  22. }
  23. print "\n"
  24. }
  25. }
  26. draw_grid(25, 5)
  27. draw_grid(16, 2)
  28. draw_grid(12, 3)