IPB
ЛогинПароль:

 
 Ответить  Открыть новую тему 
> Ходи и побеждай
James Montegry
сообщение 11.12.2007 9:00
Сообщение #1


l'imbecile divin ^_^
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской

Репутация: -  0  +


В игру играют игрок и компьтер, которые хадят по очереди. За каждым разом игрок передвигается вперед на одну, две или три клетки. Побеждает тот, кто первый окажется на последней клетке. Игрок перед началом игры стоит на первой клетке.

Помогите решить вот такую задачку.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 11.12.2007 10:28
Сообщение #2


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Английское название этой игры - ним (русское, боюсь, не существует). Играют обычно в спички. Выкладывается некоторое количество спичек на стол, игроки (их двое) берут по очереди одну, две или три спички. Кто берет последнюю - проиграл.
Ним - это вообще-то название целого класса игр такого типа. Поищи в яндексе на "игра ним спички".

Что касается реализации - определись с интерфейсом. И говори, с чем трудности.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
James Montegry
сообщение 11.12.2007 10:59
Сообщение #3


l'imbecile divin ^_^
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской

Репутация: -  0  +


Цитата
Что касается реализации - определись с интерфейсом. И говори, с чем трудности.

Количество ходов должно вводится с клавиатуры. Я не могу понять каким методом сделать эту игру.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 11.12.2007 11:17
Сообщение #4


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Например, если компьютер (тупой) играет случайным образом, то можно примерно так:
  n:=12;  {начальное число клеток}
player:=0;
while n>0 do begin
WriteLn('Осталось пройти ',n,' клеток');
Write('Игрок ',player,', введите ваш ход: ');
repeat
if player=0 then ReadLn(m) else m:=Random(3)+1;
until (m>0)and(m<4)and(m<=n)
Dec(n,m);
Player:=1-Player
end;
WriteLn('Игрок ',player,' выиграл');



--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
James Montegry
сообщение 11.12.2007 11:38
Сообщение #5


l'imbecile divin ^_^
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской

Репутация: -  0  +


Большое спасибо. Только как мне завершить программу? Просто "end." в конце мало
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 11.12.2007 11:52
Сообщение #6


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(James Montegry @ 11.12.2007 11:38) *

Просто "end." в конце мало

Верно.
Учи Паскаль, и все поймешь.
Выкладывать полное решение для тунеядцев не собираюсь.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
James Montegry
сообщение 11.12.2007 11:54
Сообщение #7


l'imbecile divin ^_^
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской

Репутация: -  0  +


Цитата

Выкладывать полное решение для тунеядцев не собираюсь.


И на этом спасибо.

З.Ы. Когда я смогу ставить плюсики?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 11.12.2007 12:27
Сообщение #8


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(James Montegry @ 11.12.2007 11:54) *

И на этом спасибо.
И тебе спасибо за адекватную реакцию smile.gif
Цитата(James Montegry @ 11.12.2007 11:54) *

З.Ы. Когда я смогу ставить плюсики?
А что, еще не можешь?.. Странно. Было вроде с 10 сообщений, а у тебя 14.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 11.12.2007 12:28
Сообщение #9


Гость






С 25 сообщений, Lapp: Изменения в системе рейтинга

По крайней мере другая информация не была обнародована...

Сообщение отредактировано: volvo - 11.12.2007 12:28
 К началу страницы 
+ Ответить 
Lapp
сообщение 11.12.2007 12:32
Сообщение #10


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


volvo, спасибо.
Башка дырявая, клинн..


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Michael_Rybak
сообщение 11.12.2007 16:45
Сообщение #11


Michael_Rybak
*****

Группа: Модераторы
Сообщений: 1 046
Пол: Мужской
Реальное имя: Michael_Rybak

Репутация: -  32  +


Плюсик добавил.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
nopsrer
сообщение 26.12.2007 19:33
Сообщение #12


Новичок
*

Группа: Пользователи
Сообщений: 15
Пол: Мужской
Реальное имя: Максим

Репутация: -  0  +


Как зделать эту же задачу, НО в случае если комьютер должен быть "умным", то есть он должен не рандомом ходить, а продумывать шаги для выиграша?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Michael_Rybak
сообщение 26.12.2007 19:38
Сообщение #13


Michael_Rybak
*****

Группа: Модераторы
Сообщений: 1 046
Пол: Мужской
Реальное имя: Michael_Rybak

Репутация: -  32  +


каждым ходом оставлять кратное четырем количество шагов.

Сообщение отредактировано: Michael_Rybak - 26.12.2007 19:39
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
andriano
сообщение 26.12.2007 19:49
Сообщение #14


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Возможно.
Но иногда компьютер должен и ошибаться. :D
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 22.05.2024 15:02
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"