2015-05-22 3 views
0

Возьмите эту факторный последовательность в качестве примера:Как взять числовое поле из последовательности BigInteger в F #?

factTake 5;; 
val it : seq<System.Numerics.BigInteger> = 
    seq [1 {IsEven = false; 
      IsOne = true; 
      IsPowerOfTwo = true; 
      IsZero = false; 
      Sign = 1;}; 2 {IsEven = true; 
         IsOne = false; 
         IsPowerOfTwo = true; 
         IsZero = false; 
         Sign = 1;}; 6 {IsEven = true; 
             IsOne = false; 
             IsPowerOfTwo = false; 
             IsZero = false; 
             Sign = 1;}; 24 {IsEven = true; 
                 IsOne = false; 
                 IsPowerOfTwo = false; 
                 IsZero = false; 
                 Sign = 1;}; ...] 

Как я могу собирать цифры в результате в список, как это:

[1; 2; 6; 24] 

Update

Спасибо за @ Николь А и комментарий @ RCH. Проблема оказывается просто:

factTake 8 |> Seq.toList |> printfn "%A" 

[1; 2; 6; 24; 120; 720; 5040; 40320] 
val it : unit =() 

Это сообщение на printfn из F # для удовольствия и прибыли также полезно: Formatted text using printf!

+0

Seq.toList это ? –

+0

BigIntegers уже «цифры». Вы хотите, чтобы seq был списком, BigIntegers, который был усечен (например, int64), или просто номера, напечатанные без внутренних элементов BigIntegers? – CaringDev

+0

@RCH Я хочу, чтобы номера печатались без внутренних элементов BigIntergers. – Nick

ответ

2

Как мы выяснили, все вместе:

factTake 8 |> Seq.toList |> printfn "%A"