Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2009, 01:50   #1
BlincAttack
Пользователь
 
Аватар для BlincAttack
 
Регистрация: 15.09.2009
Сообщений: 28
По умолчанию Бот болтун

Решил написать бота болтуна на C#,и как раз нам задали на информатику написать что-то типа такого.Так вот не кто не мог бы подкинуть исходнички ботов или примерно разъяснить как писать.
З.Ы Хочу сделать все фразы в отдельном файле *.dat.Бот должен быть консольным.
З.З.Ы А именно интересует взаимодействие файла с программой(импорт фраз,ответы на них и т.д).
BlincAttack вне форума Ответить с цитированием
Старый 29.09.2009, 13:31   #2
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Надо бы определиться каким образом ты хочешь отвечать на вопросы. Т.е. при вводе слова "Привет" - отвечать "Привет, друг". А собираешься ли ты обрабатывать "ПРиВет"?? А при вводе "Хай" или "Hi" ты будешь создавать отдельные правила? Тут много вариантов. Напиши как ты думаешь организовать разбор.
Hollander вне форума Ответить с цитированием
Старый 29.09.2009, 17:43   #3
BlincAttack
Пользователь
 
Аватар для BlincAttack
 
Регистрация: 15.09.2009
Сообщений: 28
По умолчанию

Хммм а вот тут даже не знаю...Думаю будет лучше ответы по маске...Например Прив*(Приветик,Привед,и т.д будут ответы по маске).И думаю к словам привязать функцию ToLower,чтоб ответы типа ПрИвЕт привЕт и т.д воспринимались как Привет.
BlincAttack вне форума Ответить с цитированием
Старый 29.09.2009, 18:00   #4
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

По мне я бы написал класс с двумя полями: текст и ответ; и методом сравнения(Прив* - это приветик, привед и т.д.)
И хранил бы список этого класса в файле при помощи сериализации/десериализации.
Единственная проблема, что если будет очень большая база, то будет долго грузиться. Но для учебных целей вполне достаточно.
Hollander вне форума Ответить с цитированием
Старый 29.09.2009, 18:12   #5
BlincAttack
Пользователь
 
Аватар для BlincAttack
 
Регистрация: 15.09.2009
Сообщений: 28
По умолчанию

А по подробнее можно?Я просто только начинаю кодить...
BlincAttack вне форума Ответить с цитированием
Старый 29.09.2009, 18:54   #6
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Почитай про сериализацию. Очень много всего. Например вот неплохая статья
http://borishen.blog.tut.by/2008/03/...tsiya-obektov/
Hollander вне форума Ответить с цитированием
Старый 29.09.2009, 19:12   #7
BlincAttack
Пользователь
 
Аватар для BlincAttack
 
Регистрация: 15.09.2009
Сообщений: 28
По умолчанию

Цитата:
Сообщение от Hollander Посмотреть сообщение
Почитай про сериализацию. Очень много всего. Например вот неплохая статья
http://borishen.blog.tut.by/2008/03/...tsiya-obektov/
Можете пожалуйста пример кода дать?
BlincAttack вне форума Ответить с цитированием
Старый 29.09.2009, 19:36   #8
BlincAttack
Пользователь
 
Аватар для BlincAttack
 
Регистрация: 15.09.2009
Сообщений: 28
По умолчанию

Составил .dat с вопросами и ответами.Как действовать дальше не знаю...
BlincAttack вне форума Ответить с цитированием
Старый 29.09.2009, 19:48   #9
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Код:
[Serializable]
public class Phrase
{
public Phrase(string text, string answer)
{
this.text = text; 
this.answer = answer;
}

//поля класса
public string answer, text;

//метод класса
public bool GetAnswer()
{
if (text == "Привет")
{
return answer;
}
return string.Empty;
}
}
Это базовый класс. Делаешь еще класс с полем List<Phrase> и методами сериализации и десериализации. Его и используешь. Толтко тебе надо забить объекты Phrase, чтобы база была.
Hollander вне форума Ответить с цитированием
Старый 29.09.2009, 19:53   #10
BlincAttack
Пользователь
 
Аватар для BlincAttack
 
Регистрация: 15.09.2009
Сообщений: 28
По умолчанию

хммм так а тут же булевская проверка применяется не по маске.
BlincAttack вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ICQ бот UnD)eaD)Snake Фриланс 1 12.02.2009 21:02
Бот на форуме Vitae_Raptor О форуме и сайтах клуба 3 17.09.2008 02:44
Игровой бот Ustim Gamedev - cоздание игр: Unity, OpenGL, DirectX 5 24.07.2008 15:51
Icq бот PadonnoK Работа с сетью в Delphi 11 29.11.2007 12:42