您好我在序言一個簡單的時鐘,測量時間在5分鐘間隔Prolog的整數比較
nextTime(Hrs:Mins1, Hrs:Mins2) :- nextMins(Mins1, Mins2).
nextTime(Hrs1:'55', Hrs2:'00') :- nextHrs(Hrs1, Hrs2).
nextHrs('12', '13').
nextHrs('13', '14').
nextHrs('14', '15').
nextHrs('15', '16'). // and so on
nextMins('00', '05').
nextMins('05', '10').
nextMins('10', '15').
nextMins('15', '20'). // and so on
現在我想寫一個謂語,讓我說時間t2是否已晚或時間t1之前,它聽起來很簡單,但我不知道如何比較謂詞中的兩個整數。
我試過的東西喜歡:
after(H1:M1, H2:M2) :- (H1 < H2).
或
arithmetic(X,Y) :- (X<Y).
after(H1:M1, H2:M2) :- arithmetic(H1,H2).
進出口真正的新的Prolog所以上面似乎傻了一些。 所以我的實際問題是如何比較Prolog中謂詞定義中的兩個整數。
是否有原因使用字符串而不是數字而不是數字?如果您使用整數,@CapelliC顯示的解決方案將按需要工作。 – lurker