F#中预定义宽度的随机数

时间:2013-08-27 05:35:51

标签: f#

如何定义随机数的宽度?

let randomNumber = System.Random()
let randomBarcodePart2 = randomNumber.Next(**000000, 999999**)

我现在有这个,但是有可能生成一个随机数,我们只定义宽度。

像这样:

let randomBarcodePart2 = randomNumber.Next(6)

2 个答案:

答案 0 :(得分:2)

printf的简单示例:

let t = randomNumber.Next(0,999999)
printfn "%07i" t

答案 1 :(得分:1)

您可以使用类型扩展名执行此操作:

type System.Random with
    member x.Width w =
        x.Next(0, pown 10 w - 1)
        |> sprintf "%0*d" w

这是一些输出

Random().Width 6;;
val it : string = "985326"

Random().Width 9;;
val it : string = "803426947"

Random().Width 1;;
val it : string = "6"