いろんな言語で宿題 第五編at TECH
いろんな言語で宿題 第五編 - 暇つぶし2ch310:デフォルトの名無しさん
10/07/23 07:03:30
>>307
% Prolog

色名を取得する :-
    item(_item_id,_name,_color),
    色の割り当て(_color,_色名),
    write_formatted('%t %t %t\n',[_item_id,_name,_色名]),
    fail.
色名を取得する.

色の割り当て(_色番号,_色名) :-
    findall([_color_id,_name],color(_color_id,_name),L),
    sort(L,L1),
    reverse(L1,L2),
    色の割り当て(_色番号,L2,_色名).

色の割り当て(N,_,_) :- N =< 0,!,fail.
色の割り当て(N,[[C,_色名]|R1],_色名) :-
    1 is N // C.
色の割り当て(N,[[C,_]|R1],_色名) :-
    1 is N // C,
    M is N mod C,
    色の割り当て(M,R1,_色名).
色の割り当て(N,[[C,_]|R1],_色名) :-
    0 is N // C,
    M is N mod C,
    色の割り当て(M,R1,_色名).



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