Advertisement
SalvCai

Untitled

Mar 2nd, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.71 KB | None | 0 0
  1. from random import *
  2.  
  3. NumMagico = 34
  4. n = 4
  5.  
  6.  
  7. def popola(n):
  8. lista = []
  9. while len(lista)<n**2:
  10. num =int(input(" Inserisci i numeri da 1 a 16 "))
  11. lista.append(num)
  12.  
  13. return lista
  14.  
  15. def quadrato(lista):
  16. square = []
  17. square.append(lista[:4])
  18. square.append(lista[4:8])
  19. square.append(lista[8:12])
  20. square.append(lista[12:16])
  21. return square
  22.  
  23. def controlloRighe(square,n):
  24. ctrl = 0
  25. total = 0
  26. for i in range(0,n-1):
  27. for j in range (0,n-1):
  28. total = total + square [i][j]
  29. if total == NumMagico :
  30. ctrl += 1
  31. else : ctrl = 0
  32. return ctrl
  33.  
  34. def controlloColonna(square,n):
  35. ctrl = 0
  36. total = 0
  37. for n in range(0,3):
  38. for m in range (0,n-1):
  39. total = total + square [m][n]
  40. if total == NumMagico :
  41. ctrl += 1
  42. else : ctrl = 0
  43. return ctrl
  44.  
  45. def controlloDiagonale(square,n):
  46. ctrl = 0
  47. total = 0
  48. for i in range (0,n-1):
  49. total = total + square [i][i]
  50. if total == NumMagico :
  51. ctrl += 1
  52. else : ctrl = 0
  53. return ctrl
  54.  
  55. def visualizza(matrice,n):
  56. for riga in matrice:
  57. print (riga)
  58.  
  59. def controlloMatrice():
  60. lista = popola(n)
  61. #square = quadrato(lista)
  62. trovato = " "
  63. while trovato != " si ":
  64. square = quadrato(lista)
  65. r = controlloRighe(square,n)
  66. c = controlloColonna(square,n)
  67. #d = controlloDiagonale(square,n)
  68. if (r+c) == 8:
  69. trovato = " si "
  70. visualizza(square,n)
  71. else:
  72. trovato = " no "
  73. print("NO")
  74. shuffle(lista)
  75.  
  76.  
  77. controlloMatrice()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement