Почему я получаю ошибку типа на пи в Прологе?
Я использую pi
как часть программы Пролог, которую я пишу. Вот мое единственное упоминание о pi
во всей программе:
ArcDistance is ((Degree/ 360) * Diameter * pi).
Однако, когда я запускаю программу, я получаю следующую ошибку:
uncaught exception: error(type_error(evaluable,pi/0),(is)/2)
Я делаю что-то не так с точки зрения вызова / использования pi
? Спасибо за помощь!
1 ответ
В ISO-Prolog, то есть, начиная с Cor.2:2012, атом pi
определяется с обычным значением.
Учитывая реакцию системы, которую вы показали, вы, похоже, используете более старую версию GNU-Prolog, такую как 1.3. Однако это определено в версиях, начинающихся как минимум с 1.4.0.
pi
в настоящее время определяется в IF, B, YAP GNU, SWI и, вероятно, во многих других системах.