2011-05-16 6 views
0

Je souhaite écrire un prédicat qui renvoie une solution à partir d'une base de données. Si aucune solution n'existe, le prédicat doit renvoyer "Aucune solution n'existe". Renvoyer une solution qui existe dans factbase est trivial. Comment implémenter la partie "Aucune solution n'existe". J'utilise SWI-Prolog.Test Prolog indiquant si le prédicat a échoué ou non

Répondre

2

Si vous avez un prédicat, dire fact/1 qui contient tous vos faits, vous pouvez utiliser un if-then-else comme suit:

fact_or_no_solution(Sol) :- 
    (fact(X) -> 
     Sol = X 
    ; 
     Sol = 'No solution exists' 
    ). 
+0

mec, tu es génial. – onurozcelik

Questions connexes