Prolog
% =================================================================
% データ定義(ファクト)
% =================================================================
product(item1, 3000, 4.8, 20).
product(item2, 1800, 4.2, 200).
product(item3, 5000, 4.9, 5).
product(item4, 2500, 4.5, 80).
% =================================================================
% ルール定義
% =================================================================
% おすすめ商品(AIが独自に定義:評価4.5以上 & レビュー15件以上)
recommended_product(Name, Rating, ReviewCount) :-
product(Name, _, Rating, ReviewCount),
Rating >= 4.5,
ReviewCount >= 15.
% =================================================================
% メイン処理(ideone用)
% =================================================================
main :-
write('--- Recommended Products ---'), nl, forall(recommended_product(Name, Rating, ReviewCount),
format('Item: ~w (Rating: ~w, Reviews: ~w)~n', [Name, Rating, ReviewCount])),
UHJvbG9nCiUgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KJSDjg4fjg7zjgr/lrprnvqnvvIjjg5XjgqHjgq/jg4jvvIkKJSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpwcm9kdWN0KGl0ZW0xLCAzMDAwLCA0LjgsIDIwKS4KcHJvZHVjdChpdGVtMiwgMTgwMCwgNC4yLCAyMDApLgpwcm9kdWN0KGl0ZW0zLCA1MDAwLCA0LjksIDUpLgpwcm9kdWN0KGl0ZW00LCAyNTAwLCA0LjUsIDgwKS4KCiUgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KJSDjg6vjg7zjg6vlrprnvqkKJSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQolIOOBiuOBmeOBmeOCgeWVhuWTge+8iEFJ44GM54us6Ieq44Gr5a6a576p77ya6KmV5L6hNC415Lul5LiKIO+8hiDjg6zjg5Pjg6Xjg7wxNeS7tuS7peS4iu+8iQpyZWNvbW1lbmRlZF9wcm9kdWN0KE5hbWUsIFJhdGluZywgUmV2aWV3Q291bnQpIDotCiAgICBwcm9kdWN0KE5hbWUsIF8sIFJhdGluZywgUmV2aWV3Q291bnQpLAogICAgUmF0aW5nID49IDQuNSwKICAgIFJldmlld0NvdW50ID49IDE1LgoKJSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQolIOODoeOCpOODs+WHpueQhu+8iGlkZW9uZeeUqO+8iQolID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cm1haW4gOi0KICAgIHdyaXRlKCctLS0gUmVjb21tZW5kZWQgUHJvZHVjdHMgLS0tJyksIG5sLAogICAgZm9yYWxsKHJlY29tbWVuZGVkX3Byb2R1Y3QoTmFtZSwgUmF0aW5nLCBSZXZpZXdDb3VudCksCiAgICAgICAgICAgZm9ybWF0KCdJdGVtOiB+dyAoUmF0aW5nOiB+dywgUmV2aWV3czogfncpfm4nLCBbTmFtZSwgUmF0aW5nLCBSZXZpZXdDb3VudF0pKSwKICAgIGhhbHQuCgo6LSBpbml0aWFsaXphdGlvbihtYWluKS4=