7

私はこのコードを持っています:

set_value(X,Value,[X/_|T],[X/Value|T]).
set_value(X,Value,[Y/V|T],[Y/V|NewT):- X\=Y,set_value(X,Value,T,NewT).
set_value(X,Value,[],[X/Value]).

しかし、私は/何をするのか理解できません。変数をペアにしているように見えますが、100%確実ではありません。それは間違いなく除算演算子ではありません。ありがとう。

4

1 に答える 1

10

何もしませ。すでに理解しているように、ここではペアを構築するために使用されます。

/算術評価が実行される右側isまたは別の場所では発生しないため、Prologはファンクターとして2つの引数の項を生成するだけです//中置で書くことができるので使用されます。-ジェネリックペアコンストラクターの一般的な選択肢でもあります。

于 2012-04-11T18:16:09.330 に答える