Почему в ECLiPSe Прологе указана неполная цифра?

Я использую последнюю версию ECLiPSe Prolog 64-bit для Windows, затем компилирую код:

:- op(200, yf, !).
!(N, F) :- fac(N, 1, F).
fac(0, F0, F) :- !, F=F0.
fac(N, F0, F) :- N1 is N-1, F1 is F0*N, fac(N1, F1, F).

Введен запрос:

?- X is 100000 !.
X = 28242294079603478742934215200555696886678...
Yes (8.17s cpu)

Первый вопрос: почему в TkEclipse отображаются только цифры 1999 года, а не 456574?

Второй вопрос: Предлагает ли возможность протоколировать взаимодействие с пользователем в файле ECLiPSe Prolog в качестве протокола (+File) SWI-Prolog?

Я прошу прощения за два вопроса. Я буду благодарен за любую помощь, которую вы можете оказать.

2 ответа

ECLiPSe выводит полный результат в поток под названием answer_output, но текст позже усекается графическим интерфейсом пользователя.

Самый простой способ получить результат в файл - это записать его там явно, например

?- open(myresult,write,S), X is 100000!, writeln(S,'X'=X), close(S).

Работает с DosEclipse от Версии 7.0 #36 (x86_64_nt):

Изменить 31.01.2018: время показывается одинаково, когда выход не генерируется.

Другие вопросы по тегам