|
Программа - чат с телефоном,с исскуственным интилектом =)
|
|
|
21.01.2009 в 12:14
Сообщение #1
|
|
programmer
Умный
Проверенные
Сообщений: 599
Offline
|
program boltun; var forma : integer; cmdNext : command; user : string; comp :string; begin comp := 'Я не понимаю =('; ShowForm; forma := FormAddTextField('говори =)', '', 20, TF_ANY); cmdNext := CreateCommand('ага', CM_OK, 1); AddCommand(cmdNext); repeat until GetClickedCommand = cmdNext; user := FormGetText(forma); ShowCanvas; if user = 'Привет!' then comp := 'Ну,привет!'; if user = 'Как тебя зовут?' then comp := 'J2ME болтун'; if user = 'Привет.' then comp := 'Ну,привет.'; if user = 'Как дела?' then comp := 'Нормально!А как у тебя?'; if user = 'Нормально.' then comp := 'Это радует =)'; if user = 'Плохо.' then comp := '=( А сильно плохо?'; if user = 'Сильно.' then comp := '=('; if user = 'Сильно!' then comp := '=((((('; if user = 'Блять.' then comp := 'Не матерись.'; if user = 'Блять!' then comp := 'Не матерись!'; if user = 'Пока.' then comp := 'введи exit'; if user = 'Сука.' then comp := 'Не матерись.'; if user = 'Я тебя люблю.' then comp := 'Ты совсем???'; if user = 'Что делаешь?' then comp := 'Смски твоей маме шлю.'; if user = 'Зачем?' then comp := 'Зашкафом!'; if user = 'Как?' then comp := 'Легко!'; if user = 'Легко!' then comp := 'Что легко?'; if user = 'Как тебя выключить?' then comp := 'Введи exit'; if user = 'exit' then halt; if user = 'Что радует?' then comp := 'Не знаю'; if user = 'Как твои дела?' then comp := 'Хреново'; if user = 'Почему?' then comp := 'Покачану.'; if user = 'Как мои дела?' then comp := 'Не знаю'; if user = 'Говори!' then comp := 'Я устал'; if user = 'Говори.' then comp := 'Говорю =)'; if user = 'Да.' then comp := 'Точно да?'; if user = 'Да!' then comp := 'Ого!Как точно...'; if user = 'Нет.' then comp := 'Понятно...'; if user = 'Exit.' then comp := 'Без точки!'; if user = 'Exit' then comp := 'exit,a не Exit'; if user = 'exit.' then comp := 'Нафиг ты точку поставил?'; if user = 'Что ты делаешь?' then comp := 'Смски шлю.'; if user = 'Кому?' then comp := 'Всем!'; if user = 'Смешно.' then comp := 'Что?'; if user = 'Ничего.' then comp := 'Я рад.'; if user = 'Чему?' then comp := 'Ничему!'; if user = 'Кто тебя создал?' then comp := 'Это секретная информация!'; if user = '=)' then comp := 'Смейся,смейся...'; if user = 'Кто ты?' then comp := 'Я тебе уже говорил...'; if user = 'Чего?' then comp := 'Ничего!'; DrawText(comp, 0, 0); Repaint; Delay(5000); end.
|
|
|
|
|
21.01.2009 в 20:27
Сообщение #2
|
|
admin
Admin
Администраторы
Сообщений: 244
Offline
|
Нормал, правда мона доделать. СОздать целую проогу с запасом слов. Таких тем много. Есть 2способа6 1.Либо создать кучу слов и кинуть в прогу, 2.Либо создать союзы, слова, окончания и т.д и научить телефон читать и разумно отвечать, например если внутри записано стол, то научить его при случае самому составлять из стол-столу, стола и т.д. Еще мона попробовать создать слова-игра в слова с телефоном.
|
|
|
|
|
21.01.2009 в 21:05
Сообщение #3
|
|
programmer
Умный
Проверенные
Сообщений: 599
Offline
|
Я ее пока как основа для проги выложил,может кто заинтересуется.
|
|
|
|
|
21.01.2009 в 21:12
Сообщение #4
|
|
admin
Admin
Администраторы
Сообщений: 244
Offline
|
Да. тока совеТ: вместо Delay(5000);. Запакуй в repeat..until false... И добавь, чтоб разные типа 'Да' or 'конечно' or 'Наверно'
|
|
|
|
|
25.01.2009 в 19:56
Сообщение #5
|
|
admin
Admin
Администраторы
Сообщений: 244
Offline
|
Вот код одного паренька: Code program UgadaiChislo; // Супер мега игра угадай число var i,s,n,m:integer; cmdOK, cmdExit, click: command; // объявление переменных begin // начало Randomize; // это чтобы разные числа загадывались showForm; // отобразим форму cmdOk:=CreateCommand('Ввод',CM_OK,0); // создадим команду выбора cmdExit:=CreateCommand('Выход',CM_Exit,1); // и команду выхода addCommand(cmdOk); addCommand(cmdExit); // и добавим их на экран n:=Random(100)+1; // загадываем число от 1 до 100 i:=FormAddTextField('Угадай число','',3,TF_NUMERIC); // сюда мы будем вводить наше число s:=FormAddString('Загадано число от 1 до 100. Угадай его!'); // а сюда выводить сообщения repeat // главный цикл игры repeat // ждем нажатия комманды click:=GetClickedCommand; until click<>EmptyCommand; if click=cmdOK then begin // если нажали на выбор m:=StringToInteger(FormGetText(i)); // преобразуем введенный нами текст в число formRemove(s); // в МидлетПаскаль нельзя изменить строку текста. Но можно ее пересоздать. так что удалим старый текст formSetText(i,''); // а заодно очистим и текстовое поле куда мы число ввели if m>n then s:=FormAddString('Меньше чем '+IntegerToString(m)); // если наше число больше загаданного if m<n then s:=FormAddString('Больше чем '+IntegerToString(m)); // если меньше.. if m=n then begin // если мы угадали s:=FormAddString('Пилять! Угадал! Давай снова!'); // выводим победное сообщение n:=Random(100)+1; // и загадаем новое число end; end; until click=cmdExit; // выходим из главного цикла если нажали Выход end.
|
|
|
|
|
27.01.2009 в 11:07
Сообщение #6
|
|
programmer
Умный
Проверенные
Сообщений: 599
Offline
|
я сейчас пробую добавить также и в мой мидлет но ничего не получается
|
|
|
|
|
29.01.2009 в 12:43
Сообщение #7
|
|
admin
Admin
Администраторы
Сообщений: 244
Offline
|
Шо не полушается? Ти как хош сделать?
|
|
|
|
|
31.01.2009 в 13:05
Сообщение #8
|
|
Mixalbl4
Новичок
Проверенные
Сообщений: 4
Offline
|
имхо если делать Code if user = 'Блять!' then comp := 'Не матерись!'; каждый раз то лучше внутри мидлета целый словарь сделать а потом перебором проверять)
|
|
|
|
|
04.02.2009 в 20:13
Сообщение #9
|
KIR
Начальный
Проверенные
Сообщений: 50
Offline
|
А можно сделать чат по bluetooth?
|
|
|
|
|
04.02.2009 в 20:15
Сообщение #10
|
|
admin
Admin
Администраторы
Сообщений: 244
Offline
|
В принципе возможности позволяют, но нужно мозгов, чтобы сообразить, как это все сделать.
|
|
|
|