그래서 나는 미로를 받았고 열려있는 이웃 (문자 'g'또는 '-'이있는 인접한 명소)의 수를 알아 내려고했습니다.Prolog의 결과 및 If-Statement에 따라 값을 할당하는 방법은 무엇입니까?
openNeighbors(Maze,(R,C),Answer):-
openCount(Maze,(R-1,C),Up),
openCount(Maze,(R+1,C),Down),
openCount(Maze,(R,C-1),Left),
openCount(Maze,(R,C+1),Right),
Answer is Up+Down+Left+Right.
openCount(Maze,Space,Count):-
find2D(Maze,What,Space),
( What =:= - ->
Count is 1
; What =:= g ->
Count is 1
; Count is 0
)
내 생각 과정은 내가 방금에 대한 openCount 함수를 호출 할 수 있다는 것입니다, 아래, 왼쪽, 오른쪽하지만 어떻게 포맷합니까 내 경우 openCount 함수 내 문? 내 '무엇'변수를 'g'와 '-'와 비교할 지 잘 모르겠습니다.
내가하고 싶은 것을 위해 자바 것과 동일합니다 :
if(What.equals('g')||What.equals('-')){
return 1;
}else{
return 0;
}