Создать процедуру, результатом которой будет выражение, являющееся факториалом числа - Prolog

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. Необходимо написать процедуру, результатом которой будет выражение, являющееся факториалом числа, и в котором числа (сомножители) упорядочены в порядке возрастания. Нашёл код, но при компиляции выдаёт ошибку main.pro(10,12) Syntax error: '.' is expected. Помогите пожалуйста с программой.
Листинг программы
  1. implement main
  2. open core
  3. clauses
  4. run() :-
  5. console::init(),
  6. fact(0, 1) :-
  7. !.
  8. fact(N, X) :-
  9. N > 0,
  10. fact(N, 1, 1, X).
  11. fact(N, N, Xa, Xa) :-
  12. !.
  13. fact(N, Na, Xa, X) :-
  14. succ(Na, Nn),
  15. fact(N, Nn, Xa * Nn, X).
  16. end implement main
  17. goal
  18. mainExe::run(main::run).

Решение задачи: «Создать процедуру, результатом которой будет выражение, являющееся факториалом числа»

textual
Листинг программы
  1.     fact(5, X),
  2.     console::write(X).

Объяснение кода листинга программы

В коде представлена процедура вычисления факториала числа 5 и вывода его значения на экран.

  1. fact(5, X) — данная процедура вычисляет факториал числа 5 и сохраняет результат в переменную X.
  2. console::write(X) — результат вычисления факториала выводится на экран с помощью функции write из модуля console.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.083 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы