Je reçois le problème : Erreur de syntaxe : opérateur attendu

C'est mon code

reduceBy1(Input,Output) :-
    (Input > 0 -> Output = Input - 1).  

Qu'est-ce que je fais mal? L'erreur pointe vers le "."

0
Haise Sasaki 15 nov. 2020 à 10:45

1 réponse

Meilleure réponse

Vous devez utiliser is au lieu de =.

reduceBy1(Input,Output) :-
    (Input > 0 -> Output is Input - 1). 

?-reduceBy1(5,O).
O = 4
0
Reema Q Khan 15 nov. 2020 à 10:41