Van*_*Man 5 f# computer-science
我是第一年的CS学生,没有编程方面的先验知识.我被建议解决项目欧拉的问题,并设法解决(几乎)第一个问题.
它声明您必须将所有数字相加,即3或5(或两者)的倍数.
我在F#中的代码:
let mutable n = 0
for i in 0..1000 do
if (i % 3 = 0) || (i % 5 = 0) then
n <- i + n
printfn "%A" n
Run Code Online (Sandbox Code Playgroud)
当这个运行时,我得到答案234168,这是真正的答案100.
有什么建议吗?
发布此问题的答案,以便其他人更容易从错误中吸取教训。
let mutable n = 0
for i in 0..999 do
if (i % 3 = 0) || (i % 5 = 0) then
n <- i + n
printfn "%A" n
Run Code Online (Sandbox Code Playgroud)
值得赞扬的是 JJJ 给出了最初的提示,Guy Coder 指出了更实用的方法在 F# 中会更惯用。