いろんな言語で宿題スレ 第三編at TECH
いろんな言語で宿題スレ 第三編 - 暇つぶし2ch289:デフォルトの名無しさん
10/01/16 08:16:13
>>258
% Prolog

重み付け平均をRLにセット(AL,RL) :-
  _重みならび = [1,3,4,3,1],
  sum(_重みならび,_重み合計),
  list_nth(N-2,AL,A_2),
  list_nth(N-1,AL,A_1),
  list_nth(1,AL,A1),
  list_nth(2,AL,A2),
  append([A_2,A_1|AL],[A1,A2],AL2),
  N2 is N + 2,
  重み付け平均をRLにセット(3,N2,_重みならび,_重み合計,AL2,RL).

重み付け平均をRLにセット(M,N,_重みならび,_重み合計,AL,[]) :- M > N,!.
重み付け平均をRLにセット(M,N,_重みならび,_重み合計,AL,[_重み付け平均|R]) :-
  findall(B,(for(M-2,U,M+2),list_nth(U,AL,B)),L1),
  重み付け平均(L1,_重みならび,_重み合計,0,_重み付け平均),
  M2 is M + 1,
  重み付け平均をRLにセット(M2,N,_重みならび,_重み合計,AL,R).

重み付け平均([A|R1],[B|R2],_重み合計,S1,_重み付け平均) :-
  _重み付け平均 is S1 / _重み合計,!.
重み付け平均([A|R1],[B|R2],_重み合計,S1,_重み付け平均) :-
  S2 is S1 + A * B,
  重み付け平均(R1,R2,_重み合計,S2,_重み付け平均).


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch