tr = '' br = '' cr = nil (1..100).each do |c| mf = c % 5 == 0 mt = c % 3 == 0 f = c > 9 ? " " : " " d = mt && !mf && (c + 1) % 5 != 0 && (c + 2) % 5 != 0 if d #done puts tr len = tr.length cr = tr = br + c.to_s br = f + " " * len next else cr = mf ? tr : (mt ? br : cr) end cr == br ? br << c.to_s && tr << f : tr << c.to_s && br << f end puts tr + "\n" + br