-1

リスト: バッグ = [ (a, 1, 2), (b, 2, 3), (c, 3, 4)],

リスト a の 1*2、リスト b の 2*3、リスト c の 3*4 の結果を比較したい。結果と出力を並べ替えます。PROLOG でそれを行う方法は?

ありがとうございました。

4

1 に答える 1

0

あなたはそれを使用してそれを行うことができますsort/2:

?- findall([Result, Name], 
        (member((Name, A, B), [(a, 3, 2), (b, 1, 3), (c, 3, 4)]),
         Result is A*B),Output), 
   sort(Output, SOutput).

SOutput = [[2, a], [6, b], [12, c]].
于 2012-04-16T20:18:01.327 に答える