Определение автоморфных чисел на отрезке [m, n] - Prolog

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

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

Помогите, пожалуйста, с задачей: Составьте программу для нахождения автоморфных чисел в отрезке [m,n]. Автоморфным числом называется число, которое равно последним числам своего квадрата. Например, 5^2=25, 6^2=36, 25^2=625. У меня получилось неправильно, потому, что я использовал принцип проверки суммы остатков от деления (числа и его квадрата), вот что у меня получилось:

Решение задачи: «Определение автоморфных чисел на отрезке [m, n]»

textual
Листинг программы
predicates
chk(integer,integer,integer)
is_Automorph(integer)
 
clauses
chk(N,Q,P) :- N=Q mod P, !.
chk(N,Q,P) :- Q>P, P1=P*10, chk(N,Q,P1), !.
chk(_,_,_) :- fail.
 
is_Automorph(N) :- Q=N*N, chk(N,Q,10).

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


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

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

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