RosettaCodeData/Task/Constrained-random-points-on-a-circle/Ruby/constrained-random-points-on-a-circle-2.rb

9 lines
258 B
Ruby
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
r2 = 10*10..15*15
range = (-15..15).to_a
points = range.product(range).select {|i,j| r2.cover?(i*i + j*j)}
puts "Precalculate: #{points.size}"
pt = Hash.new(" ")
points.sample(100).each{|ij| pt[ij] = " o"}
puts range.map{|i| range.map{|j| pt[[i,j]]}.join}