計算方差我已經在序言作了功能: -在序言
mean(L, M) :-
sum(L, S),
length(L, N),
M is S/N.
sum([],0).
sum([H|T],Y):-
sum(T,X),
Y is X + H.
variance([],0).
variance([H|T], M, VO):-
variance(T,M,Y),
VO is(Y + ((H-M)*(H-M))).
statsList(L, M, V1) :-
sum(L, S),
length(L, N),
M is S/N,
variance(L, M, VO),
V1 is V0/N.
由於某種原因,當我試圖計算它總是回答「假」 爲使方差:方差([1,2, 3,2,VO)或statsList([1,2,3],男,VO)
但是,如果我用這只是爲了測試它的工作原理:
variance([],0).
variance([H|T], VO):-
variance(T,Y),
VO is(Y + ((H-2)*(H-2))).
有人能告訴我在哪兒我錯了嗎?