Здравствуйте, 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.
Что за диалект такой — Пролог Д?