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

как переделать программу с turbo prolog на visual prolog 5.2 ?

02.12.2013, 19:45. Показов 1071. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста переделать программу с turbo prolog на visual prolog 5.2
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
43
44
45
46
47
48
49
50
51
52
domains
slist=string*
region=region(string,string,slist)
regions=region*
 
predicates
color_map(regions,slist)
color_region(region,slist)
select(string,slist,slist)
members(slist,slist)
test_color(string,regions)
map(string,regions)
colors(slist)
member(string,slist).
 
clauses
color_map([Region|Regions],Colors) :-color_region(Region,Colors),color_map(Regions,Colors).
color_map([],_).
 
color_region(region(_,Color,Neighbors),Colors) :-
select(Color,Colors,Colors1),
members(Neighbors,Colors1).
 
select(X,[X|Xs],Xs).
select(X,[Y|Ys],[Y|Zs]) :- select(X,Ys,Zs).
 
member(X,[X|_]).
member(X,[_|Xs]):-member(X,Xs).
 
members([X|Xs],Ys) :- member(X,Ys), members(Xs,Ys).
members([],_).
 
test_color(Name,Map) :-
map(Name,Map),
colors(Colors),
color_map(Map,Colors).
 
map("test",[region(a,A,[B,C,D]), region(b,B,[A,C,E]),
region(c,C,[A,B,D,E,F]), region(d,D,[A,C,F]),
region(e,E,[B,C,F]), region(f,F,[C,D,E])]).
 
map("west_europe",
[ region("portugal",P,[E]), region("spain",E,[F,P]),
region("france",F,[E,I,S,B,WG,L]), region("belgium",B,[F,H,L,WG]),
region("holland",H,[B,WG]), region("west_germany",WG,[F,A,S,H,B,L]),
region("luxembourg",L,[F,B,WG]), region("italy",I,[F,A,S]),
region("switzerland",S,[F,I,A,WG]), region("austria",A,[I,S,WG])]).
 
colors(["red","yellow","blue","white"]). 
 
goal
test_color("west_europe",Map),write(Map).
Добавлено через 5 минут
Нашёл ещё вроде на Visual prolog, но на 5.2 не работает
http://ssofta.narod.ru/prolog/13.htm
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
43
44
45
46
47
48
49
50
51
52
implement colorMap
 * *open core, console
constants
 * *className = "colorMap".
 * *classVersion = "".
clauses
 * *classInfo(className, classVersion).
domains
r = reference string.
s = r*.
страна = страна(string,r,s).
карта = страна*.
class predicates
раскрасить:(карта,s) nondeterm anyflow.
цвет_страны:(страна,s) nondeterm anyflow.
выбрать:(r,s,s) nondeterm anyflow.
members:(s,s) nondeterm anyflow.
member:(r,s) nondeterm anyflow.
clauses
раскрасить([Страна|Карта],Цвета):-
 * цвет_страны(Страна,Цвета),
 * раскрасить(Карта,Цвета).
раскрасить([],_).
 
цвет_страны(страна(_,Цвет,Соседи),Цвета):-
 * выбрать(Цвет,Цвета,Цвета1),
 * members(Соседи,Цвета1).
 
выбрать(X,[X|L],L).
выбрать(X,[Y|L],[Y|T]):-выбрать(X,L,T).
 
members([X|L],T):-member(X,T),members(L,T).
members([],_).
 
member(X,[X|_]).
member(X,[_|T]):-member(X,T).
 
run():- init(),
 * * * *Цвета = ["красный","жёлтый","синий","белый"],
 * * * *Карта = [страна("Чили",A,[B,C,D]),
 * * * * страна("Перу",B,[A,C,E]),
 * * * * страна("Панама",C,[A,B,D,E,F]),
 * * * * страна("Ямайка",D,[A,C,F]),
 * * * * страна("Васюки",E,[B,C,F]),
 * * * * страна("Лилипутия",F,[E,C,D])],
 * *раскрасить(Карта,Цвета),
 * *B<>A,C<>A,D<>A,C<>B,E<>B,C<>D,C<>E,C<>F,D<>F,E<>F,
 * *!,
 * *write("A=",A,", B=",B,", C=",C,", D=",D,", E=",E,", F=",F),nl;
 * * *succeed(). 
end implement colorMap
goal *mainExe::run(colorMap::run).
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.12.2013, 19:45
Ответы с готовыми решениями:

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

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

Код Turbo Prolog переделать в Visual Prolog 5.2
Помогите пожалуйста переделать код Turbo Prolog в Visual Prolog 5.2 domains st=st(string,real,real,real,real) st1=st1(string,real) ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.12.2013, 19:45
Помогаю со студенческими работами здесь

Как переделать программу из Turbo Prolog в обычный?
Доброго времени суток! Нужно переделать программу из Turbo Prolog в обычный. Пробовал убирать предикаты для работы с окнами, после...

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

[Turbo Prolog] [Visual Prolog] Задача на рекурсию
Здравствуйте, помогите, пожалуйста, с такой задачей... Имеется горсть из N Монет C1,C2,....,Cn различного достоинства. Определить,...

Перевести код из turbo prolog в visual prolog
не подскажите плиз как будет выглядеть код turbo prolog в Visual Prologe 5.2 turbo prolog: domains int=integer intl=int* ...

Перевести код из turbo prolog в visual prolog
не подскажите плиз как будет выглядеть код turbo prolog в Visual Prologe 7.3 turbo prolog: predicates for(integer,integer) ...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru