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

Задача про отель (Turbo prolog 2.0)

26.11.2011, 14:16. Показов 1818. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста с решением задачи. Вроде на форуме была похожая, но с более сложными условиями, не получается упростить.

написать программу для заказа мест в отеле. Должна содержать следующую информацию: название отеля,класс отеля, свободные места, цена номера. Реализовать вывод информации о количестве свободных мест в номерах и среднюю стоимость номера.

заранее спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.11.2011, 14:16
Ответы с готовыми решениями:

Задача про трех дочерей на Turbo Prolog
Имеется задача про трех дочерей класса для второго. Нужно решить ее на Турбо Прологе без использования списков и с ними. Вот сама задача:...

Логическая задача про животных Turbo Prolog
Задана база знаний «Животные»: Живой - пес. Рекс - собака. Белка - кошка. 16 Быстрый - лошадь. Живой - черный. Белка - белая. Рекс - рыжий....

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

3
0 / 0 / 0
Регистрация: 20.11.2011
Сообщений: 10
28.11.2011, 11:22  [ТС]
очень нужно. помогите кто-нибудь. нашла реализацию вывода информации о свободных номерах, все работает, а среднюю цену не могу рассчитать (
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
DOMAINS
    s = string
    ss = string*
    i = integer
    is = integer*   
DATABASE
    fact(s,s,i,i) 
PREDICATES
    menuitem(i)
    
    databased(ss, ss, is, is) 
    printt(ss,ss,is,is, i) 
    printtitle
 
    
CLAUSES
    
    fact("Grand","5",9,420).
    fact("Nobis","5",4,318).
    fact("Berns","4",8,333).
    fact("Diplomat","4",30,320).
    fact("Attache","3",8,164).
    fact("Central","3",7,207).
    fact("Vanadis","2",5,99).
    fact("Dialog","2",5,78).
        
printt([H1|T1], [H2|T2], [H3|T3], [H4|T4], Counter) :- Counter2 = Counter+1, 
write(Counter), write (" "), 
write(H1), write(" "), write (H2), write(" "), 
write(H3), write(" "), write(H4), nl, not(T1 = []), T2 = [], !, 
printt(T1, [H2], T3, T4, Counter2).
 
printt([_|T1], [_|T2], [_|T3], [_|T4], Counter) :- Counter2 = Counter+1, 
printt(T1, T2, T3, T4, Counter2).
 
printtitle :-   write ("  "), write("Название отеля"), write("\t"), 
write ("Класс"), write(" "), 
write("| Свободные места"), write(""), write("| Цена*(USD) |"), nl. 
 
 
menuitem(1) :-  write("\n--Информация о всех свободных номерах--\n\n "),
databased(L1, L2, L3, L4), printtitle, printt(L1, L2, L3, L4, 1), nl,fail.
 
GOAL
    menuitem(1).
помогите доработать
0
 Аватар для Грымзик
2507 / 1483 / 37
Регистрация: 14.09.2009
Сообщений: 2,740
28.11.2011, 15:40
Prolog
1
2
3
4
5
6
7
8
sredn(S):-findall(Cost,fact(_,_,_,Cost),List),
sum(List,Sum),length(List,N),S=Sum/N.
 
sum([],0).
sum([H|Tail],S):-sum(Tail,S1),S=S1+H.
 
length([],0).
length([_|Tail],N):-length(Tail,N1),N=N1+1.
1
0 / 0 / 0
Регистрация: 20.11.2011
Сообщений: 10
28.11.2011, 15:48  [ТС]
огромное спасибо )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.11.2011, 15:48
Помогаю со студенческими работами здесь

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

У трех подруг: Оли, Кати и Светы - очень красивые куртки [Turbo Prolog]
Помогите, пожалуйста, решить. У трех подруг - Оли, Кати и Светы - очень красивые куртки - синяя и красная с капюшонами и синяя без...

Арифметическая задача на Turbo Prolog
Помогите выполнить) :thank_you: Вычислить значение функции y для произвольного значений x . y=\begin{cases}2x^3 & \text{ if }...

turbo prolog. задача на списки
Здравствуйте. Задача звучит так: Есть 2 списка L1 и L2, и какое-то число X. Необходимо после каждого элемента списка L1, равному X, вывести...

Turbo Prolog. Задача на путешествия
Всем добрый день. Пролог давно подзабыт, но попросили решить пару задач. Есть данная задача: predicates travel(string, string,...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru