Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Prolog > Итеративный алгоритм


Автор: flogiston 21.11.2011, 16:50
Ребята, помогите пожалуйста.
Вот задача нахождения факториала на VIP v5.2 по итеративному алгоритму:

prolog Код:
predicates
       factorial(unsigned, long)
       factorial(unsigned, long, unsigned, long)    
clauses
       factorial(N, FactN) :-
         factorial(N, FactN, 1, 1). 
       factorial(N, FactN, N, FactN) :- !.
       factorial(N, FactN, I, P) :-
          NewI = I+1,
          NewP = P*NewI,
          factorial(N, FactN, NewI, NewP).
goal
X=3,
factorial (X, FactX).

А мне нужно решить задачу нахождения суммы ряда ряда 
s=1/sin1 + 1/(sin1+sin2) + ... +1/(sin1+sin2+...sinN), где N - натуральное число, тоже итеративным алгоритмом. Препод говорит что решение очень похоже на нахождение факториала, нужно только немного изменить.
Кто может, помогите.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)