Аккумулятор в рекурсивной функции - Prolog

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

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

Доброго времени суток, товарищи! Собственно, вот код и ниже вопрос к нему:
Листинг программы
  1. foo(I, J, N, RES) :-
  2. (I < N ->
  3. (J < N ->
  4. NEWRES is RES + 1,
  5. NEWJ is J + 1,
  6. foo(I, NEWJ, N, NEWRES)
  7. ; NEWI is I + 1,
  8. foo(NEWI, 0, N, RES)
  9. )
  10. ).
  11. main :- foo(0, 0, 3, RES), write(RES).
Не знаю как инициализировать начальное значение счетчика RES, сейчас ругается и выдает такое сообщение:

ERROR: foo/4: Arguments are not sufficiently instantiated

Подскажите, как это делается!

Решение задачи: «Аккумулятор в рекурсивной функции»

textual
Листинг программы
  1. res = 0
  2. for i = 1 .. n
  3.     for  j = 1 .. n
  4.         res += ...

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


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

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

7   голосов , оценка 4 из 5

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

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

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