Форум программистов, компьютерный форум, киберфорум
Prolog
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 13.01.2014
Сообщений: 4
1

Написать программу, выясняющую, есть ли в слове X буква "а", стоящая на нечётном месте после буквы "к""

13.01.2014, 20:23. Просмотров 1247. Ответов 2
Метки нет (Все метки)


Я нашла похожую на форуме, но переделать под свой вариант не очень получается, не до конца понимаю, как она работает.

"Написать программу, выясняющую, есть ли в слове X буква "а", стоящая на нечётном месте после буквы "к""
Prolog
1
2
3
4
5
6
7
8
check(Word):-frontchar(Word,C,Tail),check(1,C,Tail).
 
opp(1,0).
opp(0,1).
 
check(1,'k',W):-frontchar(W,'a',_),!.
check(N,'k',W):-frontchar(W,_,W1),opp(N,N1),check(N1,'k',W1).
check(_,_,W):-frontchar(W,C,W1),check(1,C,W1).
Мне нужно искать буквы "к" на четных местах после букв "и". Хочу сделать, но голова уже кипит...)
почему предикат check в первой строке содержит разное количество переменных?
Дальше совсем запуталась.... Буду очень признательна, если направите на путь истинный.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.01.2014, 20:23
Ответы с готовыми решениями:

Написать программу, выясняющую, есть ли в слове X буква "а", стоящая на нечётном месте после буквы "к"
Написать программу, выясняющую, есть ли в слове X буква "а", стоящая на нечётном месте после буквы...

Составить программу, проверяющую есть ли в слове X буква "к" , стоящая на четных местах перед буквой "и".
Здравствуйте надо решить вот такую задачу: по теме "Обработка строк в языке Prolog": Составить...

Проверить, есть ли в заданном слове буква "к", стоящая на четных местах перед буквой "и"
Здравствуйте!Помогите пожалуйста решить задачу. Составьте программу, проверяющую, есть ли в...

SWI-Prolog: проверить, есть ли в слове X буква "к" , стоящая на четных местах перед буквой "и"
Надо решить вот такую задачу, тоже срочно! По теме "Обработка строк в языке Prolog": Составить...

__________________
Помогаю в написании курсовых работ и дипломов здесь.
2
Taatshi
14.01.2014, 07:12
  #2
 Комментарий администратора 
VeryBigSecret, читаем правила форума. Одна тема - один вопрос.
0
99 / 99 / 14
Регистрация: 07.02.2013
Сообщений: 128
14.01.2014, 14:32 3
Лучший ответ Сообщение было отмечено Taatshi как решение

Решение

VeryBigSecret, в Прологе можно использовать одинаковые имена предикатов с разным количеством аргументов. Это связано с определение функторов через связку имя-арность (местность, количество аргументов).

Как работает frontchar, думаю, Вы уже поняли. opp служит для определения четной-нечетной позиции. Ну а дальше поменять один символ:
Prolog
1
2
3
check(0,'и',W):-frontchar(W,'к',_),!.
check(N,'и',W):-frontchar(W,_,W1),opp(N,N1),check(N1,'и',W1).
check(_,_,W):-frontchar(W,C,W1),check(1,C,W1).
Не стоит забывать, что отсчет позиций начинается, после нахождения буквы 'и'
P.S. Разделы predicates и goal опишите самостоятельно
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.01.2014, 14:32

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь или здесь.

Выяснить, есть ли слове X буква «а», стоящая на нечетном месте после буквы «z» (SWI-Prolog)
Здравствуйте, Есть задача: Напишите программу, выясняющий, есть ли слове X буква «а», стоящая...

Написать программу, выясняющую, есть ли в слове X буква "а", стоящая на нечётном месте после буквы "к"
Написать программу, выясняющую, есть ли в слове X буква "а", стоящая на нечётном месте после буквы...

Напишите программу, выясняющую, есть ли в слове X буква "a", стоящая на нечётном месте после буквы "к"
Напишите программу, выясняющую, есть ли в слове X буква "a", стоящая на нечётном месте после буквы...

Напишите программу, выясняющую, есть ли в слове X буква "к", и, если есть, то замените все буквы "а" в этом слове на "с"
Напишите программу, выясняющую, есть ли в слове X буква "к", и, если есть, то замените все буквы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.