level 1
italianyu
楼主
有这么一个例子,看不太懂,说是prolog中代替if的,请大家给我解释一下。
有几个基本的概念没搞明白,是不是说一个函数中的每一部分都得是true才可以继续执行?
例如“ X=\=Y,
write('this is a rectangle').”
当X和Y相等时,X=\=Y的结果是false, 所以后面的那句 write('this is a rectangle').就不会执行了,就好像if(x=\=y) write('this is a rectangle'). 我理解的对吗?
谢谢大家
rectangle_example:-
write('Enter the width: '),
read(W),
write('Enter the height: '),
read(H),
rectangle_or_square(W, H).
rectangle_or_square(X, X):-
write('this is a square').
rectangle_or_square(X, Y):-
X=\=Y,
write('this is a rectangle').
|?-rectangle_example.
2010年03月10日 04点03分
1
有几个基本的概念没搞明白,是不是说一个函数中的每一部分都得是true才可以继续执行?
例如“ X=\=Y,
write('this is a rectangle').”
当X和Y相等时,X=\=Y的结果是false, 所以后面的那句 write('this is a rectangle').就不会执行了,就好像if(x=\=y) write('this is a rectangle'). 我理解的对吗?
谢谢大家
rectangle_example:-
write('Enter the width: '),
read(W),
write('Enter the height: '),
read(H),
rectangle_or_square(W, H).
rectangle_or_square(X, X):-
write('this is a square').
rectangle_or_square(X, Y):-
X=\=Y,
write('this is a rectangle').
|?-rectangle_example.