いろんな言語で宿題スレat TECH
いろんな言語で宿題スレ - 暇つぶし2ch430:デフォルトの名無しさん
09/07/10 13:00:37
>>429

integer_to_varlist(N,L) :- var(N),var(L).
integer_to_varlist(A,A) :- not(var(A)),A=[].
integer_to_varlist(L1,L2) :-
  not(var(L1)),
  not(var(L2)),
  L1=[N|R1],
  L2=[L|R2],
  integer_to_varlist(N,L),
  integer_to_varlist(R1,R2).
integer_to_varlist(N,L) :- not((var(N),var(L))),length(L,N).

integer_to_varlist/2は複雑になったがこれはユーティリティだから
構わない。これで

sum(N,M,Sum) :-
  integer_to_varlist([N,M,Sum],[L1,L2,L3]),
  sum_l(L1,L2,L3),
  integer_to_varlist([N,M,Sum],[L1,L2,L3]).

とすっきりする。


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