fork(3) download
  1. import random
  2. #j(coluna)
  3. matriz = [[1, 2, 3],#i(linha)
  4. [4, 5, 6],
  5. [7, 8, 9]]
  6. res = False
  7. #DEFINIR UMA FUNÇÃO PARA CALCULAR AS SOMAS DE TODOS OS LADOS
  8. def magicsquare():
  9. global res
  10. if matriz[0][0] + matriz[1][0] + matriz[2][0] == matriz[0][1] + matriz[1][1] + matriz[2][1] == matriz[0][2] + matriz[1][2] + matriz[2][2] == matriz[0][0] + matriz[0][1] + matriz[0][2] == matriz[1][0] + matriz[1][1] + matriz[1][2] == matriz[2][0] + matriz[2][1] + matriz[2][2] == matriz[0][0] + matriz[1][1] + matriz[2][2] == matriz[0][2] + matriz[1][1] + matriz[2][0]:
  11. res = True
  12. else:
  13. res = False
  14. return res
  15.  
  16. #DEFINIR UM LOOP PARA GERAR Nº ALEAT. ATÉ ENCONTRAR OS QUE SATIZFAZEM
  17. #AS CONDIÇÕES DE UM QUADRADO MÁGICO
  18. while res == False:
  19. seq = [1, 2, 3, 4, 5, 6, 7, 8, 9]
  20. for i in range(3):
  21. for j in range(3):
  22. z = random.choice(seq)
  23. matriz[i][j] = z
  24. x = seq.index(z)
  25. seq = seq[:x] + seq[x+1:]
  26. magicsquare()
  27. print (matriz)
Success #stdin #stdout 0.9s 12312KB
stdin
Standard input is empty
stdout
[[2, 7, 6], [9, 5, 1], [4, 3, 8]]