Friday, August 27, 2010

My First Ruby Program

用Ruby試寫了一個找質數的程式,再加了簡單排版功能讓輸出比較好看。用到10000000只是想測試Ruby的陣列可以開到這麼大,而最能感受到Ruby快靚正的地方,應該就在 i.to_s.length 這句了,只要一行就能知道數字長度!

Max = 10000000
num = []
length = 0

(Max+1).times { |i| num << i }

2.upto(Max) do |i|
  if num[i] == i
    print i
    (i+i).step(Max, i) { |j| num[j] = 0 }
    
    #排版
    length += i.to_s.length
    if length > 40
      print "\n"
      length = 0
    else print " "
    end
  end
end

No comments:

Post a Comment