Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env ruby
- Infinity = 1.0/0
- @start = Time.now
- @primes = []
- print "PRIMEZ! "
- trap("INT") do
- duration = (Time.now - @start).round
- puts
- puts "=" * 80
- puts "Calculated #{@primes.size} primes in #{duration} secs"
- throw :exit
- end
- catch(:exit) do
- (2..Infinity).each do |number|
- catch(:composite) do
- 2.upto(Math.sqrt(number)).each { |divisor| throw :composite if number % divisor == 0 }
- @primes << number
- print "#{number} "
- end
- end
- end
Add Comment
Please, Sign In to add comment