Prévia do material em texto
// Disciplina : [Linguagem e Lógica de Programação]
// Professor : Antonio Carlos Nicolodi
// Arquivo com um algoritmo: JOGO DA VELHA.ALG
// Data de impressão: 28/03/2018
1 Algoritmo "JOGO DA VELHA"
2
3 Var
4 verif,final:logico
5 marc,letra:caracter
6 emp,l,c,posicao:inteiro
7 velha:vetor[1..3,1..3] de caracter
8
9 procedimento dvelha ()
10 var
11 l,c:inteiro
12
13 inicio
14
15 para l de 1 ate 3 faca
16 escreval("+---+---+---+")
17 escreva("|")
18 para c de 1 ate 3 faca
19 escreva( " ",velha[l,c]:2,"|")
20 fimpara
21 escreval()
22 fimpara
23 escreval("+---+---+---+")
24
25 fimprocedimento
26
27 Inicio
28 para l de 1 ate 3 faca
29 para c de 1 ate 3 faca
30 posicao <- 1 + posicao
31 velha[l,c] <- numpcarac(posicao)
32 fimpara
33 fimpara
34
35 repita
36 emp <- emp+1
37
38 dvelha()
39
40 Se (emp % 2 =0) entao
41 marc <- "O"
42 senao
43 marc <- "X"
44 fimSe
45
46 repita
47 para l de 1 ate 3 faca
48 para c de 1 ate 3 faca
49 se (velha[l,c] = "X") ou (velha[l,c] = "O" ) entao
50 verif <- falso
51 fimse
52 fimpara
53 fimpara
54 escreval("Vai jogar [",marc,"] em qual posicao?")
55 leia(letra)
56
57
58 para l de 1 ate 3 faca
59 para c de 1 ate 3 faca
60 se (letra = velha[l,c]) entao
61 velha[l,c] <- marc
62 verif <- verdadeiro
63 fimse
64 fimpara
65 fimpara
66 se (verif = falso) entao
67 escreval("JOGADA INVALIDA")
68 fimse
69 ate(verif = verdadeiro)
70
71 Para L <- 1 ate 3 faca
72 Se (velha[L,1] = velha[L,2]) e (velha[L,2] = velha[L,3]) entao
73 final <- verdadeiro
74 FimSe
75 FimPara
76 Para c <- 1 ate 3 faca
77 Se (velha[1,c] = velha[2,c]) e (velha[2,c] = velha[3,c]) entao
78 final <- verdadeiro
79 FimSe
80 FimPara
81 Se (velha[1,1] = velha[2,2]) e (velha[2,2] = velha[3,3]) entao
82 final <- verdadeiro
83 FimSe
84 Se (velha[1,3] = velha[2,2]) e (velha[2,2] = velha[3,1]) entao
85 final <- verdadeiro
86 FimSe
87
88 limpatela
89 ate (emp = 9) ou (final = verdadeiro)
90
91 dvelha ()
92 se (emp = 9) entao
93 escreval("DEU VELHA!!")
94 fimse
95
96 se (final = verdadeiro) entao
97 escreval("O JOGADOR DO [",marc,"] VENCEU")
98 fimse
99
100 Fimalgoritmo
101
102