我试图从0到2 000 000之间 得到所有质数的总和
这是我的代码:
let getPrimesUpTo (x : System.Int32) =
let upperBound = Convert.ToInt32(Math.Sqrt(Convert.ToDouble(x)))
let allNumbers = ref [1..x] in
for div = 2 to upperBound do allNumbers := List.filter (fun num -> (num % div <> 0 || div >= num)) !allNumbers
allNumbers
let sop =
let nums = !(getPrimesUpTo 2000000)
List.sum nums
当我运行它时,我得到: "亚特穆罕默德行动导致溢出"
如果我不做清单。 和我会得到 质数列表