平均を取得する必要があるため、ユーザーが負の数を入力するまで入力が停止し、出力が平均になります
{
getFloat :: IO Float
getFloat = do line <- getLine
return (read line:: Float)
average :: IO Float
average = helper summ n
where
helper :: Float->Float->IO Float
helper summ n = do val<-getFloat
if (val<0)
then (return average)
else ( do summ = summ + val
n = n+1
average= summ/n
average)
}