перевод в синтаксис пролога
От: fedorSmt  
Дата: 15.04.13 17:26
Оценка:
загрузить набор грузов, заданный списком весов грузов в несколько одинаковых грузовиков.вот эта задача в синтаксисе турбо-пролога,
predicates
fillTrucks(
real*, % weights
real, % max load
integer, % number of trucks
real** % weights in trucks
).
fillOneTruck(
real*, % source weights
real, % max load
real*, % weights in the truck
real* % weights left unloaded
).


помогите все это в синтаксис пролог д переделать пожалуйста

16.04.13 11:46: Перенесено модератором из 'Прочее' — Кодт
Re: перевод в синтаксис пролога
От: Кодт Россия  
Дата: 16.04.13 08:43
Оценка:
Здравствуйте, fedorSmt, Вы писали:

S>помогите все это в синтаксис пролог д переделать пожалуйста


Не кажется ли странным, что это один в один цитата из моего ответа
Автор: Кодт
Дата: 14.04.13
?
То есть, смысл вопроса "напишите программу за меня", или просто непонятно, о чём именно я там писал?

Допустим, что просто непонятно. Объясняю.
Во многих диалектах пролога нет нужды указывать сигнатуры предикатов: интерпретатор берёт определения и смотрит разве что на арность (количество аргументов). Чем турбо-пролог выгодно отличается — возможностью описать типы аргументов. Это улучшает понимание программы и избавляет от ошибок.
Я написал на турбо-прологе лишь для того, чтобы пояснить, на каком месте что должно находиться. Реализацию же предикатов — это извините, не моя лабораторка.

fillTrucks( Weights, MaxLoad, NumTrucks, WeightsInTrucks ) :- ..... .
fillOneTruck( Weights, MaxLoad, WeightsInTruck, RestWeights ) :- ..... .


Попробуйте написать fillTrucks (в оригинале — gruz) через fillOneTruck. Это несложно.
Кстати, раздача осмысленных имён облегчает жизнь. Вместо [a|A],b,C,D,[e] всяких.


P.S.
Что за диалект такой — Пролог Д?
Перекуём баги на фичи!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.