|
0 / 0 / 0
Регистрация: 16.04.2012
Сообщений: 6
|
|
Трудности в написании программы16.04.2012, 18:59. Показов 1491. Ответов 10
Метки нет (Все метки)
Здравствуйте, помогите пожалуйста со следующей проблемой=)
Начинаю программировать на прологе) Разобрался со всеми базовыми вещами, но столкнулся с определённой задачей, реализовать, которую пока не получается=( Смысл заключается в следующем: даны алгебраические выражения, цифры заменены буквами, а знаки арифметических операций заменены знаками вопроса, надо найти подстановки, которые обратят равенства в верные тождества. Например: ACHS / DD = NXS HOB ? SS = HXN NXS - DOC = HXN Подскажите пожалуйста примерный алгоритм, или может сталкивались с чем-то похожим) Буду благодарен любым подсказкам))
0
|
|
| 16.04.2012, 18:59 | |
|
Ответы с готовыми решениями:
10
Трудности в написании программы СИ++
Трудности при написании Морского боя |
|
2507 / 1483 / 37
Регистрация: 14.09.2009
Сообщений: 2,740
|
||||||
| 16.04.2012, 19:49 | ||||||
|
Так ACHS задавать нельзя, это такое же имя переменной, как и из одной буквы. Поэтому числа будут в виде списков.
H = '1', O = '0', B = '4', S = '8', X = '9', N = '2', A = (104+88=192)
1
|
||||||
|
0 / 0 / 0
Регистрация: 16.04.2012
Сообщений: 6
|
|
| 18.04.2012, 13:44 [ТС] | |
|
Грымзик, Спасибо, огромное) Почти всё понятно) Но есть два вопроса)
1. Почему-то ругается на строчки с операцией '?' (V=A?B).Думал может операция не определена, попробывал переопределить через op(.....'?'), на что компилятор сказал, что функция статическая. Подскажите пожалуйста как быть? Ошибка слдующая "Syntax error:Operator expected" 2.В чем смысл этих сопоставлений A=B,A1=B1 в цели naiti? Огромное спасибо, ещё раз=)
0
|
|
|
2507 / 1483 / 37
Регистрация: 14.09.2009
Сообщений: 2,740
|
||
| 18.04.2012, 14:29 | ||
|
Что за компилятор у Вас?
1
|
||
|
0 / 0 / 0
Регистрация: 16.04.2012
Сообщений: 6
|
|
| 18.04.2012, 15:26 [ТС] | |
|
Компилятор SWI-Prolog (Multi-threaded, Version 5.6.45)
0
|
|
|
2507 / 1483 / 37
Регистрация: 14.09.2009
Сообщений: 2,740
|
|
| 18.04.2012, 16:04 | |
|
У меня 5.10.5 и на ? не жалуется.
0
|
|
|
0 / 0 / 0
Регистрация: 16.04.2012
Сообщений: 6
|
|
| 18.04.2012, 17:26 [ТС] | |
|
Если удалить все условия типа (V=A?B), то ошибок нету, но тогда теряется смысл программы.
А если оставляю как есть, то компилятор выдаёт следующее: 3 ?- consult('/home/nurgle/lab1.pl'). ERROR: /home/nurgle/lab1.pl:8:0: Syntax error: Operator expected ERROR: /home/nurgle/lab1.pl:16:0: Syntax error: Operator expected ERROR: /home/nurgle/lab1.pl:17:0: Syntax error: Operator expected ERROR: /home/nurgle/lab1.pl:18:0: Syntax error: Operator expected ERROR: /home/nurgle/lab1.pl:19:0: Syntax error: Operator expected % /home/nurgle/lab1.pl compiled 0.00 sec, 2,804 bytes Никак не могу понять из-за чего так происходит
0
|
|
|
2507 / 1483 / 37
Регистрация: 14.09.2009
Сообщений: 2,740
|
|
| 18.04.2012, 17:34 | |
|
Попробовали более новую версию компилятора?
1
|
|
|
0 / 0 / 0
Регистрация: 16.04.2012
Сообщений: 6
|
|
| 18.04.2012, 17:57 [ТС] | |
|
Походу, тут дело не в версии, при компиляции под windows, даже на более низких версиях пролога, компиляция проходит успешно, а при компиляции на Unix, появляются ошибки. Возможно нужно как-то изменить оператор "?". Пока не моу понять как...
0
|
|
|
2507 / 1483 / 37
Регистрация: 14.09.2009
Сообщений: 2,740
|
|
| 18.04.2012, 23:36 | |
|
Тогда с помощью op создайте собственный оператор, и вместо ? используйте его.
0
|
|
|
0 / 0 / 0
Регистрация: 16.04.2012
Сообщений: 6
|
|
| 19.04.2012, 23:05 [ТС] | |
|
Спасиба, Вам большое за помощь) Хотел сразу так сделать, но не получалось, забывал перд op(...) поставить двоеточие тире =)
0
|
|
| 19.04.2012, 23:05 | |
|
Помогаю со студенческими работами здесь
11
Как програмно сменить клавиатуру, или трудности при написании собственного EditText Трудности при написании чата. Покажите простой пример чата на 2 человека. написании программы мини программы Не получается в написании программы Помощь в написании программы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
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. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|