Оформление раздела Goal в задаче - Prolog
Формулировка задачи:
Нужна помощь в оформлении раздела goal. Как оформить goal, что бы в заданном предикате одновременно выводил количество * и !.
Задача: Дана строка. Определить сколько в ней символов "*" и "!".
Задача у меня решена правильно.вот текст:
Код Prolog
Сейчас предикат считает только количество *, подскажите пожалуйста, как нужно исправить вывод, чтобы считал и * и ! знаки.
Листинг программы
- predicates
- counter(string,char,integer)
- clauses
- counter("",_,0).
- counter(S,K,N) :- frontchar(S,C,Q), K=C, counter(Q,K,N1), N=N1+1.
- counter(S,K,N) :- frontchar(S,C,Q), K<>C, counter(Q,K,N1), N=N1.
- goal
- counter("***!!!123abc",'*',P),write(P,'\n').
Решение задачи: «Оформление раздела Goal в задаче»
textual
Листинг программы
- goal
- Str = "***!!!123abc",
- counter(Str, '*', P1),
- counter(Str, '!', P2),
- write("Звёздочек: ", P1, ", восклицательных знаков: ", P2, '\n').
Объяснение кода листинга программы
- Задана переменная
Str
со значением***!!!123abc
. - Вызов функции
counter(Str, '*', P1)
, гдеP1
- результат вызова функцииcounter
. - Вызов функции
counter(Str, '!', P2)
, гдеP2
- результат вызова функцииcounter
. - Вывод на экран сообщения
Звёздочек: P1, восклицательных знаков: P2
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д