다음 그림과 같이 쓴 추가 규칙에 의한 곱셈에 대해 Arguments are not sufficiently instantiated
오류가 계속 발생합니다.계속 "인수가 충분히 인스턴스화되지 않았습니다"이유를 이해할 수 없습니다
mult(_, 0, 0). %base case for multiplying by 0
mult(X, 1, X). % another base case
mult(X, Y, Z) :-
Y > 1,
Y1 is Y - 1,
mult(X, Y1, Z1),
Z is X + Z1.
저는 프롤로그에 처음 왔고 그런 간단한 문제조차도 정말로 고민하고 있습니다.
도서 또는 온라인 자습서에 대한 권장 사항은 훌륭합니다.
저는 Ubuntu Linux의 SWI-Prolog에서 실행하고 있습니다.
내가 컴파일도 할 수 없다. 나는 단순히 파일을 프롤로그 [PA3]에로드하려고 시도한다. 이 오류가 발생합니다. 이상하게 생각합니다. –
파일의 이름을 소문자로 변경하십시오. 프롤로그가'PA3'을 볼 때 변수로 해석하기 때문에 오류가 발생합니다. 또 다른 옵션은'[ 'PA3'] 따옴표를 사용하는 것입니다.그 외에는 프로그램이 100 % 훌륭합니다! (여기에서 테스트 한 결과 아무런 문제 없음) – mgibsonbr
하하하 덕분에 나는 거의 좌절감에 빠져 들었다. –