Форум программистов, компьютерный форум, киберфорум
Prolog
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.63/16: Рейтинг темы: голосов - 16, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 06.12.2012
Сообщений: 17

Оптимальный маршрут авиаперелета с учетом расписания и времени

06.12.2012, 18:34. Показов 3440. Ответов 21

Студворк — интернет-сервис помощи студентам
Здравствуйте. Помогите, пожалуйста, с программой выбора оптимального маршрута авиаперелета с учетом расписания и времени.
Вот есть такой код:
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
domains
город, номер_рейса, день=string
тип_время=время(integer, integer)
тип_рейс=рейс(номер_рейса, тип_время, тип_время, список_дней)
список_рейсов=тип_рейс*
список_дней=день*
тип_перелет=перелет(номер_рейса, город, город, тип_время)
перелеты=тип_перелет*
database
расписание(город, город, список_рейсов)
predicates
nondeterm рейс(город, город, номер_рейса, тип_время, тип_время, день)
nondeterm принадлежит(тип_рейс, список_рейсов)
nondeterm принадлежит(день, список_дней)
nondeterm маршрут(город, город, день, перелеты)
nondeterm время_вылета(перелеты, тип_время)
nondeterm пересадка(тип_время, тип_время)
clauses
расписание("Нижний Новгород", "Москва", [рейс("СУ 1223", время(6, 5), время(7, 20), [ежедневно])]).
расписание("Москва", "Санкт-Петербург", [рейс("СУ 1224", время(7, 5), время(9, 20), [ежедневно])]).
принадлежит(X, [X|_]).
принадлежит(X, [_|L]):- принадлежит(X,L).
рейс(Город1, Город2, Номер_рейса, Время_вылета, Время_прибытия, День):- 
расписание(Город1, Город2, Список_рейсов), принадлежит(рейс(Номер_рейса, Время_вылета, Время_прибытия, Список_дней), Список_рейсов),
принадлежит(День, Список_дней).
маршрут(Город1, Город2, День, [перелет(Номер_рейса, Город1, Город2, Время_вылета)]):-рейс(Город1, Город2, Номер_рейса, Время_вылета, _, День). 
маршрут(Город1, Город2, День, [перелет(Номер_рейса, Город1, Город3, Время_вылета1)|Маршрут]):-маршрут(Город3, Город2, День, Маршрут), рейс(Город1, Город3, Номер_рейса, Время_вылета1, Время_прибытия1, День), 
время_вылета(Маршрут, Время_вылета2), пересадка(Время_прибытия1, Время_вылета2).
время_вылета([перелет(Номер_рейса, Город1, Город3, Время_вылета)|_], Время_вылета).
пересадка(время(Часы1, Минуты1), время(Часы2, Минуты2)):-(60*(Часы2-Часы1)+(Минуты2-Минуты1))>=40.
Но пишет ошибку на предикате время_вылета в строчках 28-29.
Подскажите, что не так, и как организовать счетчик, чтобы выводил оптимальный путь за минимальное время перелета, и как сделать переход на другие сутки.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.12.2012, 18:34
Ответы с готовыми решениями:

Найти оптимальный маршрут
ребят,помогите, в функциях полный ноль,но для универа надо В каждой клетке прямоугольной таблицы NM записано некоторое число. Изначально...

Оптимальный маршрут почтальона
Найти оптимальный маршрут почтальона на ориентированном графе, который задается количеством вершин, ребер и матрицей инцедентности....

Найти оптимальный маршрут между городами
Программа считает оптимальный маршрут между городами. Вот код :declare: Uses CRT; Const FileName = 'Kommi1.tab'; N = 3;...

21
0 / 0 / 0
Регистрация: 06.12.2012
Сообщений: 17
25.12.2012, 15:50  [ТС]
Студворк — интернет-сервис помощи студентам
подскажите, пожалуйста, еще как изменить код, чтобы пользователь сам вводил время полета и время пересадки, а программа выводила рейсы меньше или равные данному времени полета и пересадки
0
0 / 0 / 0
Регистрация: 06.12.2012
Сообщений: 17
26.12.2012, 18:18  [ТС]
уже не надо сдала на отлично спасибо за помощь)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.12.2012, 18:18

Алгоритм распределения задач с учетом их важности, времени поступления и времени обработки
Задание составить алгоритм распределения задач с учетом их важности, времени поступления и времени обработки. На вход процессора...

База данных "Оптимальный маршрут" - MS Access
Здравствуйте, задание, которое мне нужно решить, звучит так: Есть 5 заказов на дату в разные точки куда нужно доставить груз, нужно...

Составление расписания - встроенный тип для времени
Проект с расписанием поездов. Класс Timetable. Какой тип можно использовать и как, чтобы получить время в формате "часы минуты"?...

Определение даты с учетом времени
наткнулся на похожую тему https://www.cyberforum.ru/php-beginners/thread1250123.html Но там проблему не решили, наверно из-за неправильно...

Создание объекта с учетом времени
как создать объект допустим каждые 10 секунд? как например в удалении Destroy (gameObject, 10.0F);


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

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Новые блоги и статьи
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru