Prolog 如何使用嵌套if
例如:Prolog 如何使用嵌套if,prolog,Prolog,例如: testif(X,Y) :- X >= 6 -> writeln('X> 6'), Y>= 3 -> writeln('X >6 and Y> 3'); writeln('X >6 and Y<3'), writeln('X<6'); writeln('Test over'). test(X,Y):- te
testif(X,Y) :-
X >= 6 ->
writeln('X> 6'),
Y>= 3 ->
writeln('X >6 and Y> 3');
writeln('X >6 and Y<3'),
writeln('X<6');
writeln('Test over').
test(X,Y):-
testif(X,Y).
?- test(7, 3).
Yes (0.00s cpu)
X> 6
X >6 and Y> 3
testif(X,Y):-
X>=6->
writeln('X>6'),
Y> =3->
写入('X>6,Y>3');
writeln('X>6,Y6和Y我想这就是你想要写的:
testif(X,Y) :-
X >= 6 ->
(writeln('X>= 6'), Y>=3 -> writeln('X >=6 and Y>=3'); writeln('X >=6 and Y<=3')) ;
writeln('X<6'),
writeln('Test over').
test(X,Y):-
testif(X,Y).
testif(X,Y):-
X>=6->
(writeln('X>=6'),Y>=3->writeln('X>=6和Y>=3');writeln('X>=6和Y我想这就是你想要写的:
testif(X,Y) :-
X >= 6 ->
(writeln('X>= 6'), Y>=3 -> writeln('X >=6 and Y>=3'); writeln('X >=6 and Y<=3')) ;
writeln('X<6'),
writeln('Test over').
test(X,Y):-
testif(X,Y).
testif(X,Y):-
X>=6->
(writeln('X>=6')、Y>=3->writeln('X>=6和Y>=3');writeln('X>=6和Y)这是在Prolog中编写(嵌套的)if-then-else的惯用方法:
testif(X,Y) :-
(X >= 6 ->
writeln('X> 6'),
(Y>= 3 ->
writeln('X >6 and Y> 3')
;
writeln('X >6 and Y<3'),
)
;
writeln('X<6');
),
writeln('Test over').
testif(X,Y):-
(X>=6->
writeln('X>6'),
(Y>=3->
写入('X>6,Y>3')
;
writeln('X>6和Y这是在Prolog中编写(嵌套)if-then-else的惯用方法:
testif(X,Y) :-
(X >= 6 ->
writeln('X> 6'),
(Y>= 3 ->
writeln('X >6 and Y> 3')
;
writeln('X >6 and Y<3'),
)
;
writeln('X<6');
),
writeln('Test over').
testif(X,Y):-
(X>=6->
writeln('X>6'),
(Y>=3->
写入('X>6,Y>3')
;
writeln('X>6和Y非常清楚,你描述得非常清楚,这是我第一次看到如何使用括号:)非常感谢,你描述得非常清楚,这是我第一次看到如何使用括号:)首先感谢,你的网站不工作:,访问被拒绝,很遗憾,你的客户“Mozilla/4.0(兼容;MSIE 8.0;Windows NT 6.1;Trident/4.0;QQDownload 665;SLCC2;.NET CLR 2.0.50727;.NET CLR 3.5.30729;.NET CLR 3.0.30729;Media Center PC 6.0;InfoPath.2;Tablet PC 2.0)@funlive:尝试其他浏览器或更改您的代理/防火墙设置。+1用于更好的样式;我也是这样编写Prolog的。我要补充的是,缩进在Prolog(与大多数其他语言一样)中当然对可读性很重要,但对大多数Prolog解释器来说通常并不重要(与Python相反,Python有时候缩进很重要,很有意义)。首先,感谢您的站点无法正常工作:,访问被拒绝,很遗憾,您的客户端“Mozilla/4.0”(兼容;MSIE 8.0;Windows NT 6.1;Trident/4.0;QQDownload 665;SLCC2;.NET CLR 2.0.50727;.NET CLR 3.5.30729;.NET CLR 3.0.30729;Media Center PC 6.0;InfoPath.2;Tablet PC 2.0)@funlive:尝试其他浏览器或更改您的代理/防火墙设置。+1用于更好的样式;我也是这样编写Prolog的。我要补充的是,缩进在Prolog(与大多数其他语言一样)中当然对可读性很重要,但对大多数Prolog解释器来说通常并不重要(与Python相反,Python有时缩进很重要,并且有意义)。