Ficha Nº3
Exercício Nº3
2008.03.11

O Jogo dos Dardos


Uma das variantes do conhecido jogo das setas (em que se lançam pequenas flechas contra um alvo circular dividido em sectores iguais marcados com pontos de 1 a 20) é designada por jogo dos 36: um jogador ganha quando, ao fim de lançar várias setas, conseguir acumular exactamente 36 pontos; perderá logo que a soma ultrapasse esse valor. Contudo só contam os pontos quando uma seta atingir um dos seguintes sectores: 19, 17, 20, 16, 10, 6, 12; cada vez que uma seta caia noutro sector, com pontos diferentes destes, a jogada não conta, é ignorada.

Pretende-se, então, desenvolver um programa eficiente que vá recebendo os pontos obtidos por um jogador e determine se este deve continuar a jogar, ou se deve parar por já ter ganho, ou por ter perdido. Considerando que o sistema a modelar pode ser encarado como uma Máquina de Transição de Estados, desenhe o autómato determinista reactivo que modela o sistema e implemente-o com a ferramenta flex do Unix.