Swi prolog определение предиката вычисляющего сумму ряда

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

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

Просьба оказать помощь в решении данной задачи. Определите предикат p(+N,–S), вычисляющую сумму S = 1*2*3 + 4*5*6 +...+ + (n–2)*(n–1)*n, n кратно 3. то что я наваял используя свои скудные познания в логическом программировании.

Решение задачи: «Swi prolog определение предиката вычисляющего сумму ряда»

textual
Листинг программы
p(N,_):- (N mod 3) =\= 0, !.
p(3,S):- S is 1*2*3, !.
p(N,S):- N1 is N-3, S1 is (N-2)*(N-1)*N, p(N1,S2), S is S1+S2.

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

9   голосов , оценка 3.778 из 5
Похожие ответы