Дано натуральное число n Дописать к нему цифру k в конец и в начало - Prolog

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

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

Дано натуральное число n. Дописать к нему цифру k в конец и в начало. (Visual Prolog)

Решение задачи: «Дано натуральное число n Дописать к нему цифру k в конец и в начало»

textual
Листинг программы
  1. predicates
  2. f(integer,integer,integer,integer,integer)
  3. task(integer,integer,integer)
  4.  
  5. clauses
  6. f(N,K,P,NN,R) :- N<10, R=NN*10+K+(K*P*10), !.
  7. f(N,K,P,NN,R) :- N1=N/10, P1=P*10, f(N1,K,P1,NN,R).
  8.  
  9. task(N,K,R) :- f(N,K,10,N,R).

Объяснение кода листинга программы

В коде представлено решение задачи добавления цифры в начало и конец числа на языке Prolog. В этом коде используется два предиката:

  1. f(integer,integer,integer,integer,integer) - данный предикат выполняет добавление цифры в начало и конец числа.
  2. task(integer,integer,integer) - данный предикат выполняет задачу, описанную в постановке. Основная логика кода реализована в предикате f, который имеет пять аргументов: N, K, P, NN и R. В первом правильном утверждении предиката f(N,K,P,NN,R) :- N<10, R=NN10+K+(KP10), !. происходит добавление цифры в конец числа. В этом случае число N делится на 10 и результат умножается на 10, затем к результату прибавляется значение K, а затем значение K умноженное на значение P. Во втором правильном утверждении предиката f(N,K,P,NN,R) :- N1=N/10, P1=P10, f(N1,K,P1,NN,R). происходит деление числа N на 10, затем результат умножается на 10 и к нему добавляется значение P, после чего вызывается рекурсивная функция f с новыми значениями N1, K, P1, NN и R. В цели задачи task(N,K,R) :- f(N,K,10,N,R). происходит вызов функции f с аргументами N, K, 10, N и R. Здесь мы говорим, что хотим добавить цифру в начало и конец числа, при этом само число не изменяется. Поэтому мы передаем в функцию f значение N, которое является исходным числом, значение K, которое определяет цифру, которую мы хотим добавить в начало числа, и значение 10, которое говорит функции f, что мы хотим добавить цифру в конец числа. Результатом выполнения этого утверждения будет число, в начало и конец которого добавлена заданная цифра. Таким образом, в результате выполнения данного кода будет получено число, в начало и конец которого добавлена заданная цифра.

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


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

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

11   голосов , оценка 4.091 из 5

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

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

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