Repository navigation
Expand file tree
/
Copy pathquadradoMagico.py
More file actions
81 lines (59 loc) · 2.02 KB
/
Copy pathquadradoMagico.py
File metadata and controls
81 lines (59 loc) · 2.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
from random import randint
quad = [] #usei lista para representar a matriz, então em vez de quad[i][j], terá quad[i]
i = 1
vdd = False
cont = 0
print('Quadrado mágico')
print()
while vdd == False: #enquanto não achar, ele roda
while i <= 9:
num = randint(1,9)
if num not in quad: #se o número sorteado não tiver na lista 'quad', ele irá entrar nela, e o contador(i) andará um
quad = quad + [num]
i = i + 1
if i > 9: #após sortear os 9 números, entrará nesse if para comparações
cont = cont + 1 #contador para ver quantos quadrados precisou até chegar no certo
if quad[0] + quad[1] + quad[2] == 15: #cada if analisa as possibilidades de soma 15, ao todo são 8, está em forma quad[], pq usei lista
vdd = True
else:
vdd = False
if vdd == True and quad[3] + quad[4] + quad[5] == 15:
vdd = True
else:
vdd = False
if vdd == True and quad[6] + quad[7] + quad[8] == 15:
vdd = True
else:
vdd = False
if vdd == True and quad[0] + quad[3] + quad[6] == 15:
vdd = True
else:
vdd = False
if vdd == True and quad[1] + quad[4] + quad[7] == 15:
vdd = True
else:
vdd = False
if vdd == True and quad[2] + quad[5] + quad[8] == 15:
vdd = True
else:
vdd = False
if vdd == True and quad[0] + quad[4] + quad[8] == 15:
vdd = True
else:
vdd = False
if vdd == True and quad[2] + quad[4] + quad[6] == 15:
vdd = True
else:
vdd = False
if vdd == False and i > 9: #se após sair do if anterior, a variavel vdd ainda for falsa, e o contador(i) do segundo while for maior q 9, ele irá resetar o contador(i), e irá deixar a lista quad vazia, assim poderá rodar novamente até achar
i = 1
quad = []
else:
i = 12
vdd = True
print('Precisou de' , cont , 'tentativas.')
print()
for i in range(len(quad)): #printa a lista em forma de matriz
if i == 3 or i == 6:
print()
print(quad[i] , end = ' ')