Cursos / Informática para Internet / Programação Estruturada / Aula
Após a declaração das variáveis globais, para armazenar dados referentes aos jogadores e ao tabuleiro, precisamos “desenhar” o tabuleiro. O procedimento desenha, representada a seguir, faz isso. Veja:
Você viu que declaramos uma matriz de inteiros para construir o tabuleiro. Mas, no jogo da velha, não utilizamos números nas marcações. Utilizamos os símbolos “X” e “O”. Na rotina desenha, dizemos basicamente que no campo de valor 1 da matriz que declaramos (escolhido pelo jogador 1) será marcado o símbolo “X” e no campo de valor 2 (escolhido pelo jogador 2) será marcado o símbolo “O”. Note o uso de System.out.print ao invés de System.out.println, já que este último realiza uma quebra de linha, o que não é desejado para o procedimento desenha.
É importante determinar, no código, que os campos que não estiverem marcados ainda (ou seja, contiverem o valor inicial zero) devem ser exibidos com o caractere espaço em branco. Isso está sendo feito através do último comando else no código, que imprime um caractere em branco para qualquer valor diferente de 1 ou 2.
A rotina “desenha” é do tipo void, pois não retornará valor após a sua execução e recebe como argumentos dois valores inteiros, que são referentes à posição da matriz que se quer desenhar na tela.
Você já viu também que uma função pode ser chamada pela rotina main ou por outra função. É o que ocorre no procedimento jogo, apresentado a seguir, que chama o procedimento desenha para que o tabuleiro do jogo seja efetivamente exibido na tela. Veja:
Veja que na linha que nomeamos “1”, são “desenhados” os campos (0,0), (0,1) e (0,2), separados pelo caractere “|”. Na linha 2, são “desenhados” os campos (1,0), (1,1) e (1,2), também separados por “|”. Na linha 3, por fim, temos os campos (2,0), (2,1) e (2,2). Veja os comentários no trecho de código exibido. Dessa forma, quando o jogo é carregado, o tabuleiro é exibido conforme a Figura 3.
Veja que, na Figura 3, o tabuleiro é mostrado com os números das colunas acima e os números das linhas ao lado. As linhas desenhadas para separar os campos na vertical são os caracteres “|” e as linhas horizontais foram desenhadas no momento da inserção dos números das linhas. Por exemplo, após completar o desenho da linha 1, temos “printf("\n -----------\n2 ");” que dá uma quebra de linha (causada pelo caractere especial “\n”), desenha a linha horizontal e dá outra quebra de linha para, então, exibir o número da linha seguinte.
Versão 5.3 - Todos os Direitos reservados