mirror of
https://github.com/Noratrieb/idris-learning.git
synced 2026-01-14 21:15:02 +01:00
initial commit
This commit is contained in:
commit
80aa1a2be7
8 changed files with 142 additions and 0 deletions
17
Average.idr
Normal file
17
Average.idr
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
module Average
|
||||
|
||||
import Data.String
|
||||
|
||||
|
||||
||| Calculate the average word length of a string
|
||||
||| @str a string containing words seperated by whitespace
|
||||
export
|
||||
average : (str : String) -> Double
|
||||
average str = let totalLength = sum (wordLengths str)
|
||||
wordAmount = wordCount str in
|
||||
cast totalLength / cast wordAmount
|
||||
where
|
||||
wordCount : String -> Nat
|
||||
wordCount str = length (words str)
|
||||
wordLengths : String -> List Nat
|
||||
wordLengths str = map length (words str)
|
||||
Loading…
Add table
Add a link
Reference in a new issue