當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


haskell scanr1用法及代碼示例

Haskell語言Prelude模塊中函數scanr1的用法及代碼示例。

用法類型:

(a -> a -> a) -> [a] -> [a]

它采用列表的最後兩項並應用函數,然後采用末尾和結果中的第三項,依此類推。它返回中間結果和最終結果的列表。

示例1:

輸入:
scanr1 (+) [1,2,3,4]
         
輸出:
[10,9,7,4]
         

示例2:

輸入:
scanr1 (/) [8,12,24,2] 
         
輸出:
[8.0,1.0,12.0,2.0]
         

示例3:

輸入:
scanr1 (/) [12]
         
輸出:
[12.0]
         

示例4:

輸入:
scanr1 (&&) [1>2,3>2,5==5]
         
輸出:
[False,True,True]
         

示例5:

輸入:
scanr1 max [3,6,12,4,55,11]
         
輸出:
[55,55,55,55,55,11]
         

示例6:

輸入:
scanr1 (\x y -> (x+y)/2) [12,4,10,6]
         
輸出:
[9.0,6.0,8.0,6.0]
         

相關用法


注:本文由純淨天空篩選整理自 haskell scanr1。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。