![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 30.04.2013
Сообщений: 5
|
![]()
Задача 1.
Напишите программу замены в слове X всех букв "а" на сочетание "ку". Вот моя попытка решить domains char_list = char* str = string predicates conver(str, char_list) clauses conver("", [ ] ). conver(Str, [ Head | Tail] ) :- frontchar (Str, Head, Str1), conver (Str1,Tail). Помоги плис. |
![]() |
![]() |
![]() |
#2 |
Регистрация: 30.04.2013
Сообщений: 5
|
![]()
1 задачу решил помогите со 2
Задача 2 Создайте предикат, осуществляющий переписывание из одного файла, содержащего числа, в другой файл только тех чисел, которые являются четными. Есть пример но не знаю как его можно переделать. Переписать числа из файла в другой, дописав за каждым его квадрат. domains strElement=string strList=strElement* intElement=integer intList=intElement* predicates /************************преобразова ние в список*/ separ(string,strlist) scan (string,strlist,string) /*********************************** *************/ /******преобразование списка слов в список чисел*/ convertStrListToIntList(strList,int List) csltil(intList,intList,strElement) /*********************************** *************/ /*******************дополнение списка квадратами*/ p( intList, intList ) /*********************************** *************/ clauses /************************преобразова ние в список*/ separ(Str,[T|L]):- frontchar(Str,S3,S2), str_char(S5,S3), scan(S2,[T|L],S5),!. separ(_,[]). scan(Str,[T|L],S):- frontchar(Str,S3,S2), NOT(S3=' '), str_char(S5,S3), concat(S,S5,S1), scan(S2,[T|L],S1),!. scan("",[T|L],S):- T=S,separ("",L). scan(Str,[T|L],S):- T=S,frontchar(Str,_,S2), separ(S2,L),!. /*********************************** *************/ /******преобразование списка слов в список чисел*/ convertStrListToIntList([],[]):-!. convertStrListToIntList([HS|TS],LI):- convertStrListToIntList(TS,TI), csltil(TI,LI,HS). csltil(TL,[HI|TL],HS):- str_int(HS,HI),!. csltil(TL,TL,_):-!. /*********************************** *************/ /*******************дополнение списка квадратами*/ p( [], [] ). p( [H|T], [H|[HH|TT]] ):- HH = H*H, p(T,TT). /*********************************** *************/ goal %S="1 2 3 4 12 asd 24 12", file_str("input.txt",S), separ(S,LS), convertStrListToIntList(LS,IL), write(IL),nl, p(IL,RL), write(RL),nl. Последний раз редактировалось igrokk; 01.05.2013 в 11:20. |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Prolog | qip2005 | Помощь студентам | 0 | 01.12.2011 02:05 |
Prolog | ankatito | Помощь студентам | 6 | 13.11.2011 20:53 |
Prolog | SeRhy | Помощь студентам | 0 | 13.11.2010 17:10 |
prolog | Studento4ka | Помощь студентам | 0 | 18.04.2010 11:17 |
Prolog | Darck Angel | Софт | 0 | 17.01.2010 20:32 |