Вывод на экран простых делителей натурального числа - Prolog

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

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

Здравствуйте, помогите пожалуйста с задачей Составьте программу вывода на экран дисплея простых делителей натурального числа N

Решение задачи: «Вывод на экран простых делителей натурального числа»

textual
Листинг программы
domains
int=integer
intl=int*
 
predicates
is_prime(int,int)
print_div(int,int)
task(int)
 
clauses
is_prime(2,_).
is_prime(N,K) :- (N mod K)<>0, K > (N div 2).
is_prime(N,K) :- (N mod K)<>0, K1=K+1, is_prime(N,K1). 
 
print_div(N,K) :- K >(N div 2),!.
print_div(N,K) :- (N mod K)=0, is_prime(K,2), write(K),nl,K1=K+1, print_div(N,K1).
print_div(N,K) :- K1=K+1, print_div(N,K1).
 
task(K) :- print_div(K,2).

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


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

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

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