Поговори с компьютером

Статус
Закрыто для дальнейших ответов.

Den_Mak

Царь и Бог!
Регистрация
22.12.2011
Сообщения
350
Всем привет, вообщем я тут от делать нечего написал на Ruby ненужную open source программу. Если кто то знает Ruby, то помогите мне добавить в "словарный запас" программы некоторые слова.

Смысл проги: Ты можешь разговаривать с компьютером (через консоль). Допустим ты пишешь Привет (пока желательно писать соблюдать правописание).

Код проги:


Код:
# encoding: utf-8 

if gets.chomp == "Привет"
  puts "Привет, как дела?"
end

if gets.chomp == "Нормально"
  puts "У меня тоже всё хорошо"
elsif gets.chomp == "Плохо"
  puts "Почему?"
else gets.chomp == " Нормально, ты как?"
  puts "У меня тоже всё хорошо"
end

if gets.chomp == "Что сейчас делаешь?"
  puts "С тобой разговариваю, а что?"
elsif gets.chomp == "Что делаешь?"
  puts "С тобой разговариваю."
end

if gets.chomp == "Что ты сегодня делал?"
  puts "Когда, утром, днём или вечером?"
elsif gets.chomp == "Вечером"
  puts "Ничего"
end

if gets.chomp == "Пока"
  puts "Давай, пока"
end

Если кому не лень, то примите участие в добавлении слов в "словарный запас робота".


Всем заранее спасибо.
 

brevis

Well-Known Member
Регистрация
10.08.2010
Сообщения
452
Как же мы приймем участие? Присылать тебе такие куски:
Код:
if gets.chomp == "Что сейчас делаешь?"
  puts "С тобой разговариваю, а что?"
elsif gets.chomp == "Что делаешь?"
  puts "С тобой разговариваю."
end
?

Вот если бы ты сделал веб-страничку, где можно было бы поболтать с твоей программой и она запоминала бы вопросы/ответы людей...

P.S. Посмотри вот страничку (тут можно скачать базы диалогов от популярных программ-болтушек).
 

Den_Mak

Царь и Бог!
Регистрация
22.12.2011
Сообщения
350
Как же мы приймем участие? Присылать тебе такие куски:
Код:
if gets.chomp == "Что сейчас делаешь?"
  puts "С тобой разговариваю, а что?"
elsif gets.chomp == "Что делаешь?"
  puts "С тобой разговариваю."
end
?

Вот если бы ты сделал веб-страничку, где можно было бы поболтать с твоей программой и она запоминала бы вопросы/ответы людей...

P.S. Посмотри вот страничку (тут можно скачать базы диалогов от популярных программ-болтушек).
Потом думаю подключить базу данных и ответы брать (те которые не знаешь) с интернета. А те которые в базе, что бы выдавал из базы. Что бы сделать на сайте, нужен джаваскрипт, в котором я не силён.

Пока да, придёться такие куски кода писать, потом я просто напишу спец. прогу, где ты пишешь вопрос и к ней ответ, а она автоматически подставляет всякие if, eilsif и т.д.
 

brevis

Well-Known Member
Регистрация
10.08.2010
Сообщения
452
потом я просто напишу спец. прогу, где ты пишешь вопрос и к ней ответ, а она автоматически подставляет всякие if, eilsif и т.д.
Ну так смотри: качай базу вопросов/ответов ChatMaster'a (она в формате txt) и пиши свою прогу для расстановки if-else.
 

czp

czp
Регистрация
05.06.2011
Сообщения
635
я в руби не силен, но! я бы через массивы замутил все это дело, нежели через ифы(проверку), а когда там будет 1000 ифоф(проверок) точно подлагивать будет


Код:
if gets.chomp == "Что ты сегодня делал?"
puts "Когда, утром, днём или вечером?"
elsif gets.chomp == "Вечером"
puts "Ничего"
end
и вообше это бесталковый код, если я напишу 'Вечером' смею предположить что мне выдаст 'Ничего', никакой ветки диалога не наблюдается
---
Мак! ты хоть роверял на работоспособность?
 

Den_Mak

Царь и Бог!
Регистрация
22.12.2011
Сообщения
350
я в руби не силен, но! я бы через массивы замутил все это дело, нежели через ифы(проверку), а когда там будет 1000 ифоф(проверок) точно подлагивать будет
Тот код, можно сказать на черновике написан, скоро сокращу код, сделаю его более красивым и менее требовательным к ресурсам (а то 1000 ифоф...).

я в руби не силен, но! я бы через массивы замутил все это дело, нежели через ифы(проверку), а когда там будет 1000 ифоф(проверок) точно подлагивать будет


Код:
if gets.chomp == "Что ты сегодня делал?"
puts "Когда, утром, днём или вечером?"
elsif gets.chomp == "Вечером"
puts "Ничего"
end
и вообше это бесталковый код, если я напишу 'Вечером' смею предположить что мне выдаст 'Ничего', никакой ветки диалога не наблюдается
---
Мак! ты хоть роверял на работоспособность?
Замечаются такие вещи, что он иногда не отвечает. Под Windows не проверял (консоль в Windows убогая). Я же сказал, код пока на черновике, сегодня вечером посижу и переделаю некоторые вещи и думаю внести 20 вопросов и 20 ответов.
 

lekzd

parse error: parse error, unexpected T_STRING...
Регистрация
17.02.2011
Сообщения
1 125
7 лет назад, тоже самое делала моя первая программа на паскале, вот только подход к руби из консоли выглядит странным, для говорилки я бы выбрал более быстрый скриптовый язык, руби изначально задуман как медлительный, но человекоприятный
 

Den_Mak

Царь и Бог!
Регистрация
22.12.2011
Сообщения
350
7 лет назад, тоже самое делала моя первая программа на паскале, вот только подход к руби из консоли выглядит странным, для говорилки я бы выбрал более быстрый скриптовый язык, руби изначально задуман как медлительный, но человекоприятный
У меня интерпретатор 1.9.3, а если ты не поленишься прочитать то, что "Мацумото в 1.9.3 самый большой акцент делал на скорость и что половина языка интерпретатора переписана практически с нуля (он переписал, что бы скорость увеличить)))". Так что с 1.9.3 версии можно считать Ruby типичным скриптовым языком с скоростью скриптовых языков (а не черепашьей скоростью).

вот только подход к руби из консоли выглядит странным
Что странного? Половина всего, что задумано в Ruby ЛУЧШЕ (И РЕКОМЕНДУЕТСЯ) запускать в консоли (особенно под Linux/Unix/BSD).
lekzd сказал(а):
руби изначально задуман как медлительный, но человекоприятный
Ruby изначально задуман, как скриптовый, полностью объектно - ориентированный язык программирования, а уже потом как человекоприятный и легкочитаемый.

руби изначально задуман как медлительный
Если бы он был задуман как медлительный (кстати, всех мачает вопрос, почему он такой медленный (был до версии 1.9.3) вот ответ: Мацумото при разработке Ruby обращал внимание только на ООП и во вторую очередь на легкочитаемость и красоту кода, а на скорость ему было наплевать, но сейчас, когда уже Ruby настолько красив, он серьёзно взялся за скорость и производительность и мы видим результаты на 1.9.3))), то на нём бы не разрабатывали такие бы проекты как Groupon, Hulu, Github, Twitter (да, да даже не смотря на то, что он перешёл на Java и Scala, осталось много сервисов, которые написанны на Ruby).
 

lekzd

parse error: parse error, unexpected T_STRING...
Регистрация
17.02.2011
Сообщения
1 125
фанатики хуже идиотов...
Что странного? Половина всего, что задумано в Ruby ЛУЧШЕ (И РЕКОМЕНДУЕТСЯ) запускать в консоли (особенно под Linux/Unix/BSD).
да потому бинарные проги куда лучше чем скриптово-интерпретируемые, и не обгонит руби даже скомпиленный, бинарной проги на C, конечно, в вашем случае, когда вы хер положите раньше чем завершите это не играет роли, но мне кажется странным, когда консольную прогу с возможностью расширения и увеличения пишут на скриптовом языке, это какая-то хрень изначально, Скриптики в консоли для мелких задач на ВПС-ке по-быстрому пишут на чем попало лишь бы работало, потому что никому потом не надо их наращивать.

Ruby изначально задуман, как скриптовый, полностью объектно - ориентированный язык программирования, а уже потом как человекоприятный и легкочитаемый.
ну и пишите объектами, if else портянку можно писать на чем угодно, зачем для этого руби - не понятно, напирать на это бесполезно, ибо взяли плоскогубцы и гвозди ими забиваете

кстати, всех мачает вопрос, почему он такой медленный
заснуть не могу, все мучает

Ну вот теперь ты можешь спать спокойно!
Если по-честному, то когда учил руби, все думал, почему этот язык похож на всякие языки которые делали "just for fun", про медлительность уже позже в википедии прочел
 

Den_Mak

Царь и Бог!
Регистрация
22.12.2011
Сообщения
350
заснуть не могу, все мучает
Ну вот теперь ты можешь спать спокойно!

фанатики хуже идиотов...
Что странного? Половина всего, что задумано в Ruby ЛУЧШЕ (И РЕКОМЕНДУЕТСЯ) запускать в консоли (особенно под Linux/Unix/BSD).
да потому бинарные проги куда лучше чем скриптово-интерпретируемые, и не обгонит руби даже скомпиленный, бинарной проги на C, конечно, в вашем случае, когда вы хер положите раньше чем завершите это не играет роли, но мне кажется странным, когда консольную прогу с возможностью расширения и увеличения пишут на скриптовом языке, это какая-то хрень изначально, Скриптики в консоли для мелких задач на ВПС-ке по-быстрому пишут на чем попало лишь бы работало, потому что никому потом не надо их наращивать.

Ruby изначально задуман, как скриптовый, полностью объектно - ориентированный язык программирования, а уже потом как человекоприятный и легкочитаемый.
ну и пишите объектами, if else портянку можно писать на чем угодно, зачем для этого руби - не понятно, напирать на это бесполезно, ибо взяли плоскогубцы и гвозди ими забиваете

кстати, всех мачает вопрос, почему он такой медленный
заснуть не могу, все мучает

Ну вот теперь ты можешь спать спокойно!
Если по-честному, то когда учил руби, все думал, почему этот язык похож на всякие языки которые делали "just for fun", про медлительность уже позже в википедии прочел
Сразу видно, что красоту и смысл Ruby вам не понять, а всю жизнь быдлокодить на своём любимом, "быстром и продуманном" PHP!
 

czp

czp
Регистрация
05.06.2011
Сообщения
635
я в руби не силен, но! я бы через массивы замутил все это дело, нежели через ифы(проверку), а когда там будет 1000 ифоф(проверок) точно подлагивать будет


Код:
if gets.chomp == "Что ты сегодня делал?"
puts "Когда, утром, днём или вечером?"
elsif gets.chomp == "Вечером"
puts "Ничего"
end
и вообше это бесталковый код, если я напишу 'Вечером' смею предположить что мне выдаст 'Ничего', никакой ветки диалога не наблюдается
---
Мак! ты хоть роверял на работоспособность?
Замечаются такие вещи, что он иногда не отвечает. Под Windows не проверял (консоль в Windows убогая). Я же сказал, код пока на черновике, сегодня вечером посижу и переделаю некоторые вещи и думаю внести 20 вопросов и 20 ответов.
причем тут виндовс, причем тут черновик? если код сам по ЛОГИКЕ написан не верно?может то не консоль виндовская убогая?? может задуматься?
 

Den_Mak

Царь и Бог!
Регистрация
22.12.2011
Сообщения
350
я в руби не силен, но! я бы через массивы замутил все это дело, нежели через ифы(проверку), а когда там будет 1000 ифоф(проверок) точно подлагивать будет


Код:
if gets.chomp == "Что ты сегодня делал?"
puts "Когда, утром, днём или вечером?"
elsif gets.chomp == "Вечером"
puts "Ничего"
end
и вообше это бесталковый код, если я напишу 'Вечером' смею предположить что мне выдаст 'Ничего', никакой ветки диалога не наблюдается
---
Мак! ты хоть роверял на работоспособность?
Замечаются такие вещи, что он иногда не отвечает. Под Windows не проверял (консоль в Windows убогая). Я же сказал, код пока на черновике, сегодня вечером посижу и переделаю некоторые вещи и думаю внести 20 вопросов и 20 ответов.
причем тут виндовс, причем тут черновик? если код сам по ЛОГИКЕ написан не верно?может то не консоль виндовская убогая?? может задуматься?
Я уже писал выше, но повторюсь ещё раз, это черновик! Скоро я перепишу весь код адекватно, сегодня вечером я перепишу только часть, если кто то из вас мол\жет помочь мне, то пожалуйста, милости прошу!
 

tigra60

Спасатель
Регистрация
10.12.2009
Сообщения
1 990
от делать нечего написал на Ruby ненужную open source программу
Судя по вашей программе - вы удивительно цельная личность. Ведь у других жопа, руки и голова - обычно растут из разных мест

Сразу видно, что красоту и смысл Ruby вам не понять
Да уж! На таком примере точно не понять!

Ruby изначально задуман, как скриптовый, полностью объектно - ориентированный язык программирования,
Ну а ваш код это иллюстрирует ярчайшим образом! :wacko:

Скоро я перепишу весь код адекватно
Ах, вы все обещаете, обещаете...

Походу, автор "Хоттабыча" насмотрелся. :happy:
 

Den_Mak

Царь и Бог!
Регистрация
22.12.2011
Сообщения
350
Походу, автор "Хоттабыча" насмотрелся. :happy:
При чём тут "Хоттабыч", ни какой связи нет в ваших словах... вот "Социальная сеть" насмотрелся!

Сразу видно, что красоту и смысл Ruby вам не понять
Да уж! На таком примере точно не понять!
Вы полезли туда, куда сами не понимаете. Человек же ясно написал, что учил Ruby и тут чистый спор между двумя людьми.
 

tigra60

Спасатель
Регистрация
10.12.2009
Сообщения
1 990
"Никакой" пишется слитно. Учите правописание, или ваша гипер-супер-пупер-прога вас не поймет (или поймет только безграмотных неучей типа вас).
А что касается фильма "Хоттабыч", если вы его не смотрели, так там этот Хоттабыч тоже с компьютером разговаривал. Но ему простительно, он 1000 лет в бутылке просидел. Вы тоже?
 

BaNru

Пацифизжу
Команда форума
Регистрация
13.11.2010
Сообщения
4 138
+1 Тигре

Спустя полгода, человек наконец-то написал самое простое условие.
Будем ему памятник ставить?!
 

A-F

Well-Known Member
Регистрация
25.07.2011
Сообщения
390
Den_Mak - ты сказочный мудак, у меня уже слов нету. Посмотрел тупые скринкасты по Ruby и решил всем доказать что все о нем знаешь и познал Дзен и т.п. Вечно с кем то споришь бесполезно, толку от этого нету... лучше иди реально учись что-то толковое делать. Те люди которые делали шаблон для сайта на тему "КОШКИ" и то адекватнее, и хоть как то развиваются.
 

tigra60

Спасатель
Регистрация
10.12.2009
Сообщения
1 990
тут чистый спор между двумя людьми.
Да какой, нахрен, спор? То, что вы накалякали, это Руби? Это ООП? Это больше похоже на язык "Васик" для компьютера "Ириша" с 64 кб памяти! Для полного счастья нужно было еще секундомер ваш туда вставить, считать сколько секунд будет думать над ответом дебил по эту сторону монитора.
Вы полезли туда, куда сами не понимаете. Человек же ясно написал, что учил Ruby.
Да, Руби я не знаю, но в программировании разбираюсь получше вашего, уж поверьте. И с алгоритмической точки зрения вы написали херню. Так программируют только неучи, которые вообще не знают основ программирования.

Будем ему памятник ставить?!
Обязательно! Из его кода! Только надо мыла побольше, чтобы руки потом отмыть.
 

Den_Mak

Царь и Бог!
Регистрация
22.12.2011
Сообщения
350
"Никакой" пишется слитно. Учите правописание, или ваша гипер-супер-пупер-прога вас не поймет (или поймет только безграмотных неучей типа вас).
А что касается фильма "Хоттабыч", если вы его не смотрели, так там этот Хоттабыч тоже с компьютером разговаривал. Но ему простительно, он 1000 лет в бутылке просидел. Вы тоже?
Ну хотабыча я смотрел и знать, как пишется "никакой" мне никак ни надо.
 
Статус
Закрыто для дальнейших ответов.
Верх Низ