C# - Jogo da Velha (Tic-Tac-Toe)


 Hoje vou apresentar o famoso jogo da velha, um programa bem simples feito na linguagem C#, que você pode usar para aprender conceitos da linguagem e também para se divertir.

O jogo da velha (Brasil) ou jogo do galo (Portugal) é um jogo e passatempo popular. É um jogo de regras extremamente simples, que não traz grandes dificuldades para seus jogadores e é facilmente aprendido.

Seu nome teria se originado na Inglaterra, quando nos finais da tarde, mulheres se reuniram para conversar e bordar. As mulheres idosas, por não terem mais condições de bordar em razão da fraqueza da visão, jogavam este jogo simples, que passou a ser conhecido como o da "velha". Porém, sua origem teria sido ainda mais antiga. Fala-se em tabuleiros escavados na rocha de templos do antigo Egito, que teriam sido feitos por escravos há 3.500 anos.(a constatar).

Muito popular por sua disponibilidade, pode ser jogado sobre um tabuleiro ou mesmo sendo riscado sobre um pedaço de papel ou mesa.

Analisando o número de possibilidades de forma simplista, existem 362.880 maneiras de se dispor a cruz e o círculo no tabuleiro, sem considerar jogadas vencedoras. Quando consideramos as combinações vencedoras, existem 255.168 jogos possíveis.

Assumindo que 'X' inicia o jogo (se considerar que 'O' inicia, os resultados passam a ser inversos), temos:

Ignorando jogadas simétricas (outras jogadas rotacionadas ou refletidas), existem apenas 138 resultados únicos.

Assumindo novamente que 'X' sempre inicia o jogos, temos:

A seguir o jogo da velha em execução no Visual Studio 2013 for Windows Desktop:

 

Pegue o projeto completo aqui :   JogoDaVelha_CSharp.zip

Porque a palavra da cruz é loucura para os que perecem; mas para nós, que somos salvos, é o poder de Deus.
1 Coríntios 1:18

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

Referências:


José Carlos Macoratti