#!/usr/bin/env ruby n=5 (2..n).each { |gap| (0..(n-gap)).each { |i| k = i+gap ((i+1)..(k-1)).each { |j| puts "#{i},#{k}" puts " #{i},#{j}" puts " #{j},#{k}" } #puts } } (2..n).each { |i| (0..(n-i)).each { |j| puts "#{j} #{j+i}" (1..n).each { |l| (j..(j+i-l)).each { |k| puts " #{k} #{k+l}" } } } }