Home フォーラム AZ-Prologサポート掲示板 不等号演算について 返信先: 不等号演算について

#58664
稲葉
ゲスト

| ?–3>=-4.
Syntax error
となるのは、記号文字列(区切り記号を除く)を一つのトークンとして読み込む仕様のため、
“?-” , “3” , “>=-” , “4”
となり、”>=-” に相当する演算子が存在しないのでエラーとなります。
同様に、
| ?–2<2.
もシンタックスエラーとなりますが、これは
“?–” ,”2″ , “<” , “2”
となって ”?–“ に相当する演算子の部分でエラーになります。

このような場合、演算子の後にスペースを補うか ”(“と ”)”で括ってください。
| ?-3>= -4.
| ?-3>=(-4).

記号文字列を一つのトークンとするというのは、Prologにおいては次のような
オペレータの動的定義も可能であるようにしているからです。
| ?- op(700,xfx,>=-).
yes
| >=-(X,Y):- X>=Y*(-1).
| ?- 3>=-4.
yes
よろしくお願いします。

上部へスクロール