Написать программу нахождения количества цифр 3 в целом числе - Prolog

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

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

Написать программу нахождения количества цифр 3 в целом числе

Решение задачи: «Написать программу нахождения количества цифр 3 в целом числе»

textual
Листинг программы
predicates
num_n(integer,integer,integer)
 
 
clauses
num_n(N,N,1).
num_n(M,N,0) :- M<10, M<>N.  %% M - число; N-цифра
num_n(M,N,K) :- M>=10,N=M mod 10, V=M div 10, num_n(V,N,K1), K=K1+1.
num_n(M,N,K) :- M>=10,N<>(M mod 10), V=N div 10, num_n(V,N,K).

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

Код на языке Prolog предлагает решить задачу подсчёта количества цифр 3 в числе. В коде используется рекурсивный подход и три предиката:

  1. num_n(N,N,1) — если число N равно цифре N, то есть 1.
  2. num_n(M,N,0) — если число M меньше 10 и оно не равно цифре N, то есть 0.
  3. num_n(M,N,K) — если число M больше или равно 10, то есть M >= 10, то число N равно последней цифре числа M, а значение K равно 1 плюс значение K1, которое получается после вызова функции num_n для числа V и цифры N. В случае если число N не является последней цифрой числа M, то есть N < (M mod 10), значение K равно K1 плюс 1. В результате работы программы, она выведет количество цифр 3 в числе.

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


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

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

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