Saltar para: Posts [1], Pesquisa e Arquivos [2]



Funcionamento do Jogo do Galo

por baixinho, em 02.05.05
Hardware:
Utilizo dois motores, dois sensores de toque e um sensor de luz.
O avanço no eixo dos Xs e Ys é feito por cada um dos motores, parando sempre que o sensor de toque é activado.
Para isso utilizo uns pins (peças com a referencia 2458 e 3673) que ao passarem pelo sensor de toque o pressionam.
O sensor de luz lê a quantidade de luz reflectida pelo espaço em branco ou pela peça colocada. Quanto mais escuro, mais alto o valor adquirido. Por isso acima de um certo valor x, é guardado a coordenada como preto, se for mais baixo que um valor y, guarda como branco e entre esses dois valores guarda como vazio. Os valores x e y são constantes para facilitar a alteração do programa.

Software:
O algoritmo é muito simples. Primeiro ler todas as coordenadas. De seguida testar várias condições para executar a jogada. Quando uma delas é verdadeira, joga-se e ignora-se as restantes.
Primeiro testa se o espaço central está vazio;
Em segundo lugar testa se pode ganhar. Existem 24 possibilidades de ganhar (9 horizontais, 9 verticais e 6 na diagonal). O que dá 20 condições porque não se testa novamente o espaço central;
Em terceiro lugar testa se pode perder. Fá-lo exactamente da mesma forma que o teste de ganhar;
Quando não pode ganhar nem perder, joga-se num local à sorte, que em primeiro lugar serão os cantos.
Este algoritmo consegue pelo menos empatar na maior parte das vezes. Mas existe uma técnica bastante simples para o contornar...
A maior dificuldade que tive foi por isto tudo em 6100 bytes... :)

LBaixinho

Autoria e outros dados (tags, etc)

publicado às 17:33


Pesquisar

Pesquisar no Blog



subscrever feeds



O meu próprio tema LEGO

Wiki OutroMundo