2011-05-06 4 views
0

나는 swi prolog를 사용합니다. 내 코드는 첫 번째 줄에서 실행되지만 다른 코드는 실행하지 않습니다.프롤로그 문제

see(Data), //open file to read 
    repeat, 
    readln(A), //read line from file 
    write(A), 
    A\==end_of_file,!. 

예기치 않은 파일 오류가 발생합니다. 너는 어떤 생각을 가지고 있니?

답변

1

readln/1은 swi-prolog 매뉴얼에 없으므로 코드도 포함시켜야합니다. 당신이 무슨 말을한다는 것을 가정하고, 코드는 아마되어야합니다 :

see(Data), //open file to read 
    repeat, 
    readln(A), //read line from file 
    write(A), 
    A=end_of_file,!. 

/0 "구조"

보조 노트에

때까지 반복 ...처럼 작동 반복, 난 재귀 솔루션을 선호하는 것 ... like

io(end_of_file):- 
    write(end_of_file). 
io(_):- 
    readln(A), 
    write(A), 
    io(A). 

더 많은 선언적 느낌.