![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
Для начала расскажу, что за игрушку мне нужно сделать, хотя многие её знают.
Имеется 10 спичек, 2 игрока, за один раз можно взять 1-3 спички, игроки берут спички поочереди, побеждает тот, кто возьмёт последнюю спичку. Я сам новечёк в Яве, до этого писал на "древнем" Паскале. Почитал синтаксис, но ничего толком не собрал. Вопросы: 1. Какие команды используются для запроса: "Сколько спичек вы хотите взять? (Жду цифру)" 2. Какой алгоритм придумать можно для "искуственного интелекта" этой игрушки. Помогите люди у кого уже был опыт в создании игрушек. |
|||
|
||||
| LSD |
|
||||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Это тебе лучше спросить в Программирование игр, графики и искусственного интеллекта. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||||
|
|||||||
| 3,14 |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
Ну ИИ здесь не нужен, а алгоритм для этой игры есть готовый, спроси здесь: http://forum.vingrad.ru/index.php?showforum=13, думаю помогут. -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
||||||
|
|||||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
Спасибо за хелп, обхожусь пока что "TextIO", вроде достаточно для ввода, вывода.
Написал эту игрушку на Паскале, теперь имею чёткое представление что нужно делать. Вот столкнулся с проблемой: не знаю как обозначаются и используются массивы в Яве Классы в Яве это тоже самое что и процедуры? |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Массивы в Java похожи на массивы в паскале, только отсчет идет от 0 и размер можно задавать во время исполнения. Например итерация по массиву выглядит приблизительно так:
Классы в Java похожи не на процедуры, а на объекты паскаля. Это сообщение отредактировал(а) LSD - 19.9.2005, 20:36 -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
что то не понятно мне
можешь пожалуста конвертнуть этот код из Паскаля в Яву, мне так будет понятней.
|
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
А вообще, любая книжка по основам языка сняла бы такие вопросы. Это сообщение отредактировал(а) Lamer George - 20.9.2005, 07:52 -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: 2 Всего: 62 |
x++; |
|||
|
||||
| LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Только итерацию надо делать от 0, а не от 1. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
А, точно. В Паскале ведь с единицы нумеруется. Подправил.
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
Уже начинаю въезжать в синтаксис языка. Но что то мне не понятно почему программа не выдаёт в конце нули и потом нули с единицами. Должно выходить
0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 Посмотрите плз.
Это сообщение отредактировал(а) antsh - 20.9.2005, 15:50 |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Ты наступил на одни очень интерестные грабли
Когда ты пишешь ' ' - это задает не строку и константу типа char, а char в Java числовой тип и может складываться с другими числовыми типами, таким образом когда ты пишешь s[i]+ ' ', char преобразуется в int и вычисляется сумма, которая затем и печатается. Чтобы избежать такого надо писать " " - вот это уже строка и + будет выполнять конкатенацию строк. Это сообщение отредактировал(а) LSD - 20.9.2005, 14:03 -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
Да верное это я не заметил когда переводил из паскаля, но всё равно это не решает проблемы, теперь он вообще ничего не выдаёт
Разобрался проблема была в "for (i = 0;i<n ; i++)" Вопрос в чём разница между "=" и "=="? Это сообщение отредактировал(а) antsh - 20.9.2005, 15:03 |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
У меня выдает 0 0 0 0 0 0 0 0 0 0.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
= - это присваивание (то же, что у вас := )
== - это сравнение -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
Хорошо тогда почему когда я пишу "for (i=1; i==n;i++)", то у меня ничего не выдаётся, а когда пишу "for (i = 1; i<=n; i++)" всё работает как надо.
я поправил код, теперь он верно работает. Должно быть 2 ряда, в нижнем единицы означают выгрышные спички. |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
В Java цикл for работает не так как в Pascal.
Цикл for выполняется до тех пор пока условие после первой точки с запятой истинно, т.е. в первом случае пока i равно n, если это условие сразу не верно, то цикл не выполнится ни разу. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
LSD Аааа теперь ясно, большое спасибо, пойду дальше думать
|
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
Возникла проблема с вызовом процедур.
Что нужно писать на месте параметров, хочу из основного блока программы перенсти в процедуру i,n,m.
Второй вопрос: имею 2 - 3 процедуры, хочу чтобы на всех были одни переменные - глобальные переменные, как их указывать |
|||
|
||||
| LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Поясни поконкретней.
В Java нет процедур и глобальных переменных, есть методы класса и поля класса. Поля класса бываю статические и нет, статические принадлежат всем экземплярам класса и существуют в единственном экземпляре. Не статические поля принадлежат конкретному экземпляру и их существует столько сколько созданно объектов. Методы тоже бывают статические и не статические, статические методы могут обращаться только к статическим методам и полям, не статические методы могут обращаться к любым методам и полям. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
LSD
Вообщем ситуация такая: у меня одна процедура завязана на другой. Комп перескакивает из одной в другую постоянно, в итоге когда всё сделано, делается остановка программы. Как мне возможно это всё реализовать? |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Как понять перескакивает, ты пишешь код он выполняется, если надо вызываешь другие методы, тогда начинают выполняться они, по завершению этих методов продолжает выполняться метод из которого был вызов. Это ничем от паскаля не отличается.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
LSD Значит мне нужно знать как создаются новые методы и как в них переходить(вызывать). Метод - можно представить как процедура, ведь верно?
Вот код, проблема в том, что я из одного метода в другой параметры не могу перенести.
|
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
Почему бы все-таки не посмотреть книгу по Java fundamentals?
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Для выхода из приложения можно использовать System.exit(0). А вот насчет передачи параметров я так и не понял, чем тебя такой способ не устраивает:
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| javastic |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1214 Регистрация: 18.3.2005 Где: St.Petersburg Репутация: нет Всего: 27 |
antsh, вся проблема в том (насколько я понял по твоим суждениям) что ты думаешь на уровне модульного типа программирования, а не на уровне объектно-ориентированного, поэтому некоторые вещи для тебя не понятны. Попробуй поискать в Интернете статьи с описанием объектно-ориентированной парадигмы и сразу всё станет понятно.
-------------------- 01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011 scjp, mcp |
|||
|
||||
| javastic |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1214 Регистрация: 18.3.2005 Где: St.Petersburg Репутация: нет Всего: 27 |
antsh, чтобы было проще понять как в яве выглядят аналоги процедур и функций как в паскале:
-------------------- 01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011 scjp, mcp |
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
Боьшое всем спасибо за оказанную помощь
|
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
аа ещё последний вопрос:
как объядинить 2 условия к примеру while(n>0 and n<4){....} |
|||
|
||||
| Dancer |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: нет Всего: 37 |
while((n > 0) && (n <4)){}
&& - AND || - OR ! - NOT Ты же книжку купил -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
Dancer Спасибо, там то всё есть, книжонка более 300 страниц, только пока найду пройдёт пол дня
|
|||
|
||||
| Zandr |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 433 Регистрация: 16.7.2004 Где: Новосибирск Репутация: 9 Всего: 13 |
У нее что, оглавления нет?
|
|||
|
||||
| antsh |
|
|||
|
Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 72 Регистрация: 16.9.2005 Репутация: нет Всего: нет |
ZandrКнига отпечатанная, друг сэекономил на названии книги и оглавлении, либо его вообще не было, вообще нету - факт
А домашку сдал на 5 |
|||
|
||||
| javastic |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1214 Регистрация: 18.3.2005 Где: St.Petersburg Репутация: нет Всего: 27 |
Не за что.
Это сообщение отредактировал(а) javastic - 23.9.2005, 15:32 -------------------- 01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011 scjp, mcp |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |