Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 138
от 31.05.2005, 14:20

Администратор:Калашников О.А.
В номере:Вопросов: 2, Ответов: 4


Вопрос № 21351: Здравствуйте, эксперты! Очень прошу, помогите кто знает как создать умную болталку. У меня есть пару примеров: ' определить, есть ли в конце фразы восклицательный знак if (length(s)>0) and (s[length(s)]='!') then Label1.Caption:='о...
Вопрос № 21353: Добрый день! В связи с попыткой написать программу для медиа-плеера возникли вопросы: 1.Каким образом можно узнать размеры видео изображения и изменить эти размеры? 2.Как узнать длину медиа-файла в секундах. Спасибо за помощь! Романов...

Вопрос № 21.351
Здравствуйте, эксперты! Очень прошу, помогите кто знает как создать умную болталку. У меня есть пару примеров:
' определить, есть ли в конце фразы восклицательный знак
if (length(s)>0) and (s[length(s)]='!')
then Label1.Caption:='ответ'
' Содержит ли фраза заданное слово
if pos ('заданное слово',s)>0 then Label1.Caption:='ответ'
может переспросить, если вопрос был "не понят" и еще пример двух-трехступенчатого диалога. Подскажите как заставить его обучаться, запоминать сказанное и применять это уже в следующих диалогах.
Отправлен: 26.05.2005, 10:43
Вопрос задала: marincija (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: Bochvarov NikB
Здравствуйте, marincija!
А он, когда все узнает, будет помогать нам :)
Кто вьидумал ету задачу?
И какая цель, ето непонятно. И как будеш отвечать, если в одной фразе исчешь только отделние слова?
Извни, что не отвечаю, а задаю вопросьи :)
Ответ отправил: Bochvarov NikB (статус: 4-ый класс)
Отправлен: 26.05.2005, 11:14

Отвечает: Jadd
Здравствуйте, marincija!
Не слушайте никого. Вполне понятно желание. Таких ботов полно в веб-чатах. Суть их сводится к фильтрации контента, т.е. того, что вводят юзвери и отлова или бана тех фраз, которые запрещены к употреблению. Так что тут все нормально. Теперь по сути. Обучаться программа может при определенных условиях. Например, есть собственный словарик и, при обнаружении неизвестного слова, прорамма требует от админа разъяснений. Это - работающий пример программ-переводчиков. В любом случае, нужно, просто необходимо, делать лексический анализ строки и исходя из знакомых/незнакомых лексем выбирать варианты. Т.е. в данном случае, если предполагается, что программа учится у собеседника, тогда вопрос должен ставиться к конкретному слову, иными словами, программа должна переспросить у собеседника что означает данное слово и, при обучении, переспрашивать разные параметры этого слова (существительное, падеж, род, суть, синонимы и тп). Все эти параметры должны сохраняться и при последующем общении пр именяться. Т.е. если встретится такое же слово, но с другим окончанием, программа может переспросить, что правильно ли она поняла, что под таким-то слвом подразумевалось слово из словаря? Ну и в таком духе. В общем, тут много чего делать. Единственная проблема - вовремя отучать программу от "вредных привычек", например, ругаться матом. Нет гарантии, что кто-то ее не научит этому. Вообщем, удачи. Пиши, если есть конкретные вопросы по реализации.
---------
Hakuna matata
Ответ отправил: Jadd (статус: 4-ый класс)
Отправлен: 26.05.2005, 11:30
Оценка за ответ: 5


Вопрос № 21.353
Добрый день! В связи с попыткой написать программу для медиа-плеера возникли вопросы:
1.Каким образом можно узнать размеры видео изображения и изменить эти размеры?
2.Как узнать длину медиа-файла в секундах.
Спасибо за помощь!
Романов Леонид
Отправлен: 26.05.2005, 12:11
Вопрос задала: Ямкина Елена Владимировна (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: Jadd
Здравствуйте, Ямкина Елена Владимировна!
Если речь о стандартной компоненте TMediaPlayer, тогда это решается так:
1. Размеры можно узнать и установить считав/изменив свойство DisplayRect у самого MediaPlayer. Это свойство типа TRect.
2. Длину медиафайла (продолжительность) можно узнать считав свойство TrackLength и, в качестве индекса, указать номер трэка. Т.е. MediaPlayer1.TrackLength[1];.
Нужно помнить, что как первое свойство, так и второе доступны после открытия файла. Т.е. сначала открываем файл, а потом уже меняем ректы и узнаем продолжительность. Удачи.
---------
Hakuna matata
Ответ отправил: Jadd (статус: 4-ый класс)
Отправлен: 26.05.2005, 12:44

Отвечает: Stamm
Здравствуйте, Ямкина Елена Владимировна!
2) MediaPlayer1.Length div 1000
Ответ отправил: Stamm (статус: 3-ий класс)
Отправлен: 27.05.2005, 08:17


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Яндекс


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiplus
Отписаться
Вспомнить пароль

В избранное