Am von unten 6: 1 in einer nicht-rekursive Fakultäts-Funktion und bekommt einen Compiler-Fehler zu zählen versucht:F # Für negative Schleifenzählung ab - Typ int nicht unterstützt die Bediener ..-
let fact x =
let mutable product = 1
for i in x..-1..1 do
product <- product * i
product
// Error on the 6 - type 'int' does not support the operator '..-'
let answer = fact 6
printfn "%i" answer
I habe diese Idee aus der Nähe des unteren here
Habe die Funktion geändert, um nur zu zählen und es funktioniert, aber ich bin interessiert zu wissen, warum dies fehlgeschlagen ist. Gibt es einen besseren Weg zum Countdown?
Mit VS2012 Update 3
Vielen Dank - vor allem für die mehr funktionale rekursiven Möglichkeiten. Ich gab Punkte für seinen interessanten Ansatz. Wenn ich dir auch Punkte geben könnte, würde ich (und alle anderen, die geantwortet haben)! –