![]() |
|
Модераторы: Poseidon |
![]()
|
|
| ДобренькийПапаша |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1278 Регистрация: 14.1.2006 Где: г.Москва Репутация: нет Всего: 7 |
Задаёте количество палочек и поочерёдно берёте с компьютером от одной до трёх палочек. Кто берёт последнюю тот проиграл.
Вся фишка в том, что проигрывает заведомо тот кому оставляют 4n+1 палочек. То есть если при ходе вашего соперника у него 17 палочек, он заведомо проиграл, при любом его ходе вы оставите ему 13 палочек, затем 9, потом 5, и собственно последнюю. Написать я написал, только делается только один ход. Почему? Где дыра в коде?
-------------------- Меня зовут Себастьян Парейра, торговец чёрным деревом. |
|||
|
||||
| Oleg_Ci |
|
||||
![]() Friend ![]() ![]() Профиль Группа: Участник Сообщений: 485 Регистрация: 28.5.2006 Где: Новосиб.обл. Репутация: 25 Всего: 30 |
так надо
Это сообщение отредактировал(а) Олег4 - 1.8.2006, 16:22 |
||||
|
|||||
| $tatic |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 28.1.2005 Репутация: нет Всего: 22 |
А может ли код
вернуть ноль? (не очень разбираюсь в C++) И почему так странно сделаны циклы, может проще было бы использовать while |
|||
|
||||
| Oleg_Ci |
|
|||
![]() Friend ![]() ![]() Профиль Группа: Участник Сообщений: 485 Регистрация: 28.5.2006 Где: Новосиб.обл. Репутация: 25 Всего: 30 |
Это сообщение отредактировал(а) Олег4 - 1.8.2006, 16:13 |
|||
|
||||
| ДобренькийПапаша |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1278 Регистрация: 14.1.2006 Где: г.Москва Репутация: нет Всего: 7 |
Да, rand()%3 может возвратить ноль, но у меня там защита стоит. Олег: Ты молодец, переделал. ТОлько компьютер играет неправильно. Я же сказал, надо чтобы компьютер играл по умному, а не рандомил как идиот, так и я написал бы за одну минуту. Нужно, чтобы компьютер старался мне оставлять количество палочек подчиняющееся реккурентной формуле 4n+1 при n=1,2,3,4...
Пример если я задаю вначале игры 21-у палочку, первый ход мой, то я уже проиграл, заведомо проиграл. Но компьютер играет у тебя неправильно, ты зря мой код совсем переделал. -------------------- Меня зовут Себастьян Парейра, торговец чёрным деревом. |
|||
|
||||
| Oleg_Ci |
|
|||
![]() Friend ![]() ![]() Профиль Группа: Участник Сообщений: 485 Регистрация: 28.5.2006 Где: Новосиб.обл. Репутация: 25 Всего: 30 |
Так программа у меня и "нерандомит", а вычисляет ответ, проверено мной можешь тоже проверить.
Я хочу сказать, что вычисляет по "умному" - по формуле 4n+1, и всё работает, компьютер выигрывает, попробуй у него выиграть... Это сообщение отредактировал(а) Олег4 - 1.8.2006, 19:32 |
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |