: 주어 졌을 때 술어 이름 s2int : 그것은 샤 우드기본 PROLOG 계산 나는 다음과 같은 계산 술어 쓰기 위해 노력하고있어 프롤로그에 새로 온 사람
- s2int (0, Y) "를 반환 "Y = 0.
- s2int (s (0), Y) => Y = 1.
- s2int (s (s) (0)), Y) => Y = 2.
- s2int (S (s (s) (0))), Y) => Y = 3.
등등 .. 여기 내가 (매우 저조한) 작성했는데, 처음에는 내가이 코드 뭘하려 :
s2intAux(0,Y).
s2intAux(X,Y):- X = s(Z) ,Y1 is Y+1, s2intAux(Z,Y1).
을하지만 난 (s2intAux를 입력하여 실행하려고 할 때마다 (0), Y) "오류 :/2 : 인수가 충분히 인스턴스화되지 않았습니다"라는 오류 메시지가 나타납니다. Y가 정의되지 않았기 때문에 오류가 발생합니다.
내가 왜 지금 몇 시간 붙어 봤는데 (내가 값을 0으로 Y를 시작하려고하지만,이 일이 전혀 작동하지 않았다)s2intAux(0,Y).
s2intAux(X,Y):- X = s(Z) ,Y1 is Y+1, s2intAux(Z,Y1).
s2int(X,Y):- Y1 is 0, s2intA(X,Y1).
인 : 다음 나는이 하나의 시도 너희들을 돌보고있어, 제발 도와 줘! 감사합니다.