Игра "Вишневый пирог" В эту игру могут играть два и более игроков - C#
Формулировка задачи:
Игра "Вишневый пирог" В эту игру могут играть два и более игроков. Перед ними пирог, разрезанный на равные куски: играющие сами определяют, на сколько кусков пирог режется по горизонтали и на сколько по вертикали. В левый верхний кусок запечена вишня. Игроки по очереди берут кусок за куском. Брать можно сразу по несколько кусков. Проигрывает тот, кому достанется кусок с вишней.
Такое вот чудо...
Решение задачи: «Игра "Вишневый пирог" В эту игру могут играть два и более игроков»
textual
Листинг программы
public static void NextPlayer(ref int player, int players)
{
if (player == players)
player = 1;
else player++;
}
public static void Main()
{
int max = 4;
Console.WriteLine("Сколько игроков будет играть?");
int players = int.Parse(Console.ReadLine());
Console.WriteLine("На сколько кусков разрезать по вертикали?");
int m = int.Parse(Console.ReadLine());
Console.WriteLine("На сколько кусков разрезать по горизонтали?");
int n = int.Parse(Console.ReadLine());
int pieces = n * m;
int player = 1;
int piecesTaken;
Console.Clear();
Console.WriteLine("Ирают: {0}. Кусков торта: {1}. Можно взять за раз {2}.", players, pieces, max);
while (pieces > 0)
{
Console.WriteLine("Сколько кусков берет игрок {0}? (Осталось {1})", player, pieces);
piecesTaken = int.Parse(Console.ReadLine());
if (piecesTaken > max || piecesTaken > pieces || piecesTaken <= 0)
{
Console.WriteLine("Вы не можете взять столько");
continue;
}
pieces -= piecesTaken;
NextPlayer(ref player, players);
}
Console.WriteLine("Игрок {0} проиграл", player - 1);
Console.ReadKey(true);
}