A inspiração para esse desafio deve ser ridiculamente óbvia no momento da postagem.
A tarefa
Você deve criar um programa no estilo Shut the Box (não função, programa). Os princípios básicos de fechar a caixa são:
Os jogadores tentam fechar a caixa girando um conjunto de alavancas identificadas como 1-9. Eles devem fazê-lo girando as alavancas. A sequência de eventos de cada turno é a seguinte:
- A posição atual das alavancas é mostrada.
- Em um novo jogo, a posição das alavancas deve ser exibida como
123456789
. - Em um jogo com alavancas fechadas, todas as alavancas fechadas são exibidas como
-
. Por exemplo, em um jogo com 1, 5 e 9 fechados, a saída seria-234-678-
.
- Em um novo jogo, a posição das alavancas deve ser exibida como
- Os di (c) e (são | são) rolados.
- Se as alavancas 7, 8 e 9 estiverem todas desligadas, apenas um dado de seis faces será lançado. Caso contrário, 2 dados de seis faces são lançados.
- O jogador é solicitado a escolher quantas alavancas deseja virar.
- Se o jogador escolher um número> 9 ou <0, o jogo termina.
- Se o jogador escolher uma alavanca já fechada, o jogo termina.
- O jogador seleciona muitas alavancas.
- Se a soma das alavancas não for igual ao valor dos di (c) e lançados, o jogo termina.
- Se todas as alavancas estiverem fechadas, parabéns, você venceu. Caso contrário, volte para a etapa 1.
Regras para o Programa
- Em cada turno, você deve exibir as posições atuais das alavancas.
- Você deve gerar o valor do rolo com a frase
You rolled:
(observe o espaço). - Você deve solicitar (e aguardar) o número de alavancas para alternar com a frase
How many levers to flip:
(observe o espaço). - Você deve solicitar (e aguardar) quantas alavancas o jogador especificar com a frase
Which lever to flip:
(observe o espaço). - Você deve virar as alavancas especificadas.
- Se a qualquer momento o jogo terminar, você deverá produzir
Game Over
. - Se o jogador terminar um turno sem alavancas abertas, você deverá
You win!
Jogos de exemplo
123456789
You rolled: 5
How many levers to flip: 5
Which lever to flip: 1
Which lever to flip: 2
Which lever to flip: 3
Which lever to flip: 4
Which lever to flip: 5
Game Over
123456789
You rolled: 5
How many levers to flip: 3
Which lever to flip: 2
Which lever to flip: 2
Which lever to flip: 1
Game Over
123456789
You rolled: 12
How many levers to flip: 2
Which lever to flip: 3
Which lever to flip: 9
12-45678-
You rolled: 6
How many levers to flip: 2
Which lever to flip: 2
Which lever to flip: 4
1---5678-
You rolled: 11
How many levers to flip: 2
Which lever to flip: 5
Which lever to flip: 6
1-----78-
You rolled: 8
How many levers to flip: 1
Which lever to flip: 8
1-----7--
You rolled: 8
How many levers to flip: 2
Which lever to flip: 1
Which lever to flip: 7
---------
You win!