Описать предикат - Prolog

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

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

Доброго времени суток! помогите пожалуйста выполнить задание: Описать предикат y(N), выводящий на экран результат выражения для заданного N. N — целое число. Результат выражения должен быть целочисленным, если все операции в выражении целочисленные. большое спасибо
вот попытка написать программу, но она не работает, подскажите в чем ошибка
Листинг программы
  1. sum(N,I,I,S1,S):- N>0, !.
  2. sum(N,I,I1,S,S1):- I2 is I1 + 1
  3. ,S2 is S1 + sqrt(I) + sqr(N)
  4. ,sum(N,I,I2,S,S2).
  5. summa(N,N,R,R):- !.
  6. summa(N,N1,R,R1):- N2 is N1 + 1
  7. ,sum(N,N2,1,S,N2)
  8. ,R2 is R1 + S
  9. ,summa(N,N2,R,R2).
  10. y(N):- summa(N,2,R,2), write(R).
  11. ?-y(4).

Решение задачи: «Описать предикат»

textual
Листинг программы
  1. sum(N,_,J,S,S) :-
  2.     J > N,
  3.     !.
  4. sum(N,I,J,S,SR) :-
  5.     S1 is S + sqrt(I) + J*J,
  6.     J1 is J+1,
  7.     sum(N,I,J1,S1,SR).
  8.    
  9. summa(N,I,S,S) :-
  10.     I > N,
  11.     !.
  12. summa(N,I,S,SR):-
  13.     sum(N,I,1,0,SS),
  14.     S1 is S+SS,
  15.     I1 is I+1,
  16.     summa(N,I1,S1,SR).
  17.    
  18. y(N):-
  19.     summa(N,1,0,R),
  20.     write(R).

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


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

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

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

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

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

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