0
我試圖做一個簡單的程序,發現一組點的平均距離爲0.輸入將是一組元組(即(1,2)和(2,3)),它應該從0計算每個點的距離,然後找到平均值。如何通過元組列表進行遞歸?
我理解其中的邏輯和通式(再次,它很簡單),我這裏有:
averageDist ((x,y):xs) = (sqrt((x*x)+(y*y)))/length xs
我只是用元組的時候不明白列出的語法。正如你所看到的,我嘗試過(x,y):xs並在編譯時,ghci認爲所有的值都是不同的類型。我怎樣才能修復這個程序,以便我可以迭代並將公式應用於每個元組?
我完全是Haskell的新手,我非常感謝任何幫助。
感謝
在那兒一種使用列表理解而不是多個函數的方法? – raine
這正是我要找的。我改變了一點,但我仍然遇到與類型問題有關的大錯誤?任何想法是什麼可能導致它? – raine
@raine'sum [sqrt(x * x + y * y)| (x,y)< - xs]/length xs'。 –