自分のためのTips、誰かの為にもなるといいな・・・

Prolog 覚書


Rev.2を表示中。最新版はこちら

基礎

ANDとOR

ANDはコンマ,ORはセミコロン.簡単な例.
hoge(X,Y) :- X > Y, write('ok!'); write('ng!').
同じ内容のORを,以下のように書ける.
hoge(X,Y) :- X > Y, write('ok').
hoge(X,Y) :- write('ng').
入れ子にしたい場合,括弧を使えば良い.
hoge(X,Y,Z) :-
  X < Y, (
    Y < Z, write('xyz');
    X < Z, write('xzy');
    write('zxy')
  );
    X < Z, write('yxz');
    Y < Z, write('yzx');
    write('zyx').
if文のように使うことができる.

SWI-Prolog 組込み関数

文字アトムの連結

連結
?- concat_atom(['A', 'B', 'C'], ' and ', X).
X = 'A and B and C'
分割
?- concat_atom(L, ',', 'a,b,c,d,e').
L = [a, b, c, d, e]

文字コード・文字アトムの変換

コードからアトム
?- char_code(C,65).
C = 'A'
 アトムからコード
?- char_code('a',N).
N = 97





最終更新 2007/09/23 02:14:59 - yohei
(2007/09/23 02:13:52 作成)


検索

最近気になる言葉
LINQ
atコマンド
最近更新したページ
2015/7/16
2008/9/15
2008/1/30
2007/12/14
2007/11/14
2007/10/25
2007/9/23
2007/5/30