Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования
Перезагрузить страницу Prolog-«Строки»,«Файлы»
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
igrokk igrokk вне форума
Новичок
 
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 30.04.2013
Exclamation Prolog-«Строки»,«Файлы» - 30.04.2013, 20:15

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

1)domains
char_list = char*
str = string
predicates
conver(str, char_list)
clauses
conver("", [ ] ).
conver(Str, [ Head | Tail] ) :- frontchar (Str, Head, Str1), conver (Str1,Tail).

Frontchar (String, Char, Rest_of_string).
Объекту String присваивается значение, состоящее из Char и Rest_of_string (остаток строки).
- frontchar ("SPRING", C, "PRING") присваивает символьной переменной C значение 'S'.

Как это можно с моей задачей связать ?
Ответить с цитированием
  (#2 (permalink)) Старый
igrokk igrokk вне форума
Новичок
 
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 30.04.2013
По умолчанию 01.05.2013, 11:02

1)сделал
Помогите со вторым как можно под мою задачу переделать

Переписать числа из файла в другой, дописав за каждым его квадрат.

domains
strElement=string
strList=strElement*
intElement=integer
intList=intElement*
predicates
/************************преобразование в список*/
separ(string,strlist)
scan (string,strlist,string)
/************************************************/
/******преобразование списка слов в список чисел*/
convertStrListToIntList(strList,intList)
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.
Ответить с цитированием
  (#3 (permalink)) Старый
Винитарх Винитарх вне форума
Специалист
 
Аватар для Винитарх
 
Сообщений: 7,955
Сказал(а) спасибо: 2
Поблагодарили 302 раз(а) в 302 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 09.12.2013, 16:13

igrokk, почему задаёте вопросы здесь, а не на Пролог-форуме, который рядом:
Prolog - Компьютерный форум
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Turbo Prolog Файлы, Строки kaarb Prolog 4 18.12.2011 18:04
Строки в Prolog 5.2 yJIaJIa Prolog 8 03.06.2011 13:19
Файлы в prolog flamer Prolog 0 11.03.2011 00:07
Строки, тип запись и типизированные файлы Mantikora Pascal 1 25.01.2011 16:14
Помогите с прологом(списки и строки,файлы) Неприкасаемость Prolog 13 27.06.2010 21:19
Visual Prolog 7.1 Файлы jeydron Prolog 0 16.04.2010 22:34
Добавить в конец первой строки, последние n2-n1 слов второй строки gika111 Вопросы начинающих программистов 1 20.01.2010 16:41
Кто возьмется переписать маленькую программу с Turbo Prolog на Visual Prolog 5.0 (за плату) olik567 Prolog 4 07.10.2009 17:46
Строки. Добавление части строки внутрь другой frikorsar Prolog 2 21.01.2009 19:58
Можно ли создавать php-файлы, в которые вшиты другие файлы? feedbee PHP 6 04.12.2005 01:59
Текстовые файлы как получить все строки imported_MC Pascal 3 20.04.2005 22:16
Имеются две строки CString, можно ли реализовать поиск части первой строки во второй Anonymous Visual C++ 4 23.05.2003 16:34



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов