Форум программистов, компьютерный форум, киберфорум
Prolog
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 07.12.2019
Сообщений: 1

Перенос программы из Turbo Prolog в SWI-Prolog

07.12.2019, 21:01. Показов 2831. Ответов 0

Студворк — интернет-сервис помощи студентам
Здравствуйте, не могу переписать данный код под SWI-Prolog. Сильно уж версия от Borland отличается. Буду очень благодарен.
Программа была написана по данному заданию:
Преобразуйте текстовый файл, состоящий из нескольких строк, таким образом, чтобы все символы в каждой строке разделялись одним пробелом. Сформируйте новый файл.
Prolog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
domains
  file=myfile; myfile1
    
predicates
  go
  transform
  tr(string,string)
  
goal
  clearwindow,
  go, renamefile("test1.txt","test.txt"),
  write("done"),nl.
  
  
clauses
 
transform:-
  not(eof(myfile)),!,
  readln(S),
  tr(S,S1),
  write(S1),nl,
  transform.  
transform:-
  closefile(myfile),
  closefile(myfile1).
 
tr("",""):-!.
tr(S1,S):-
  frontstr(1,S1,C,S2),
  concat(C," ",C1),
  tr(S2,S22),
  concat(C1,S22,S).
  
  
go:-
  openread(myfile,"test.txt"),
  readdevice(myfile),
  openwrite(myfile1,"test1.txt"),
  writedevice(myfile1),
  transform,
  readdevice(keyboard),
  writedevice(screen).
Добавлено через 4 часа 7 минут
Prolog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
convert(File) :-
    open(File, read, Stream),
    open("sampleNEW.txt", write, Stream2),
    get_char(Stream, Char1),
    write(Stream2, Char1),
    write(Stream2, " "),
    process(Char1, Stream, Stream2),
    close(Stream),
    close(Stream2).
 
process(end_of_file, _, _) :- !.
 
 
process(Char, Stream, Stream2) :-
    %write(Char),
    get_char(Stream, Char2),
    write(Stream2, Char2),
    write(Stream2, " "),
    process(Char2, Stream, Stream2).
Написал что-то подходящее по функционалу, но не знаю как убрать end_of_file в конце файла, в который идёт вывод.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.12.2019, 21:01
Ответы с готовыми решениями:

Перевод программы из Turbo Prolog в SWI-Prolog
Здравствуйте! У меня есть программа по определению внука Петра III, она написана на Turbo Prolog. Я пытался перевести её на SWI-Prolog,...

Как переделать программу написанную на Turbo-Prolog в SWI-Prolog?
Ребята подскажите пожалуйста как переделать эту программу написанную на Turbo-Prolog в SWI-Prolog? domains i=integer il=i* ...

В Turbo-Prolog есть возможность описать Goal. Как это реализовано в SWI-Prolog
Здравствуйте. в Turbo-Prolog есть возможность описать Goal: Goal father(X,_), write(X). И ответ мы получим сразу при запуске...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.12.2019, 21:01
Помогаю со студенческими работами здесь

Перенос алгоритма из MathCAD в SWI Prolog
Мне нужно записать алгоритм маткада на языке пролог. Прилагаю свои результаты. Маткадовские циклы в прологе назвал одноименно(for i -->...

Определить, какой элемент списка встречается в нем чаще всего (Turbo/SWI Prolog)
Определить, какой элемент списка встречается в нем чаще всего.

Пожалуйста, помоите переделать программу с Turbo Prolog на Visual Prolog
DOMAINS l_i=integer* l_s=string* i=integer s=string c=char structura=str(i,s) %Структура Порода-Параметры и его список ...

Из Turbo Prolog в Visual Prolog - где будут отличия в коде?
ребята ,помогите. есть прога на турбо прологе,а нужно отредактировать под visual prolog 7.5. Что изменится? Где отличия?.. ниже...

Поездная бригада состоит из кондуктора, проводника, машиниста и помощника машиниста
Может у кого есть исходни на Prolog ЗЫ заранее спаисбо)


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru