|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Разработать программу, которая реализует "магически" шар выдавая случайный результат
Сама не в силах, помогите с заданием: Разработать программу, которая реализует "магически" шар выдавая случайный результат. К примеру, пользователь задает вопрос: "Есть ли жизнь на марсе?", а программа выдает результат из предложенного:
Да Нет Скорее всего да Скорее всего нет Возможно Имеются перспективы Вопрос задан неверно Учесть возможность, что для ряда вопросов программа выдает определенные ответы. |
#2
|
||||
|
||||
Пользователь должен голосом задавать вопрос же, как в кино Трасса 60, так?
Пишу программы за еду. __________________ |
#3
|
|||
|
|||
Делаем базу знаний на чем-то, типа продукционных правил. В части ЕСЛИ указываем ключевые слова, в части ТО - варианты ответов из которых происходит случайный выбор (1 ответ - частный случай - для вопросов, на которые ответ предопределен). Одно из правил делается специальным - оно используется тогда, когда никакое другое правило неприменимо. PROFIT.
Пример класса для правил: Код:
type TRule = class KeyWords : TStringList; Answers : TStringList; constructor Create; constructor Load(Stream : TStream); destructor Destory; override; procedure LoadFromStream(Stream : TStream); procedure SaveToStream(Stream : TStream); function GetMatchLevel(Questtion : String) : Double; overload; function GetMatchLevel(Words : TStringList) : Double; overload; end; PS. Далее, видимо, в раздел "Работы" с соответ. обозначением цены и сроков. Ну или пиши код и начинай задавать конкретные вопросы здесь. PPS. Голосом тоже, в принципе, можно. Только интернет нужен будет - у гугла распознавалку спрашивать. Последний раз редактировалось lmikle, 05.07.2017 в 06:31. |