# -*- coding: ISO-8859-4 -*- #Programmi ülesandeks on tuvastada, kas sisestatud arvud moodustavad maagilise ruudu. #Sisendiks on kasutaja sisestatud arvud ridade kaupa. #Programm leiab kõigi ridade ja veergude summad ning kontrollib, kas need summad on võrdsed. #Kui jah, siis ongi maagiline ruut print("Loeme sisse listi listis.") print("Kõigepealt algväärtustame massiivi 0-idega ja selleks on vaja teada ridade ja veergude arvu.") ridu = int(input("Mitu rida? ")) veerge = int(input("Mitu veergu? ")) arvud = list() for r in range(ridu): rida = list() print("Sisestame",r+1,"rida...") for v in range(veerge): arv = int(input("Sisesta arv")) rida.append(arv) arvud.append(rida) # print(a) # Reasummade leidmine summad = list() for r in range(ridu): summa = 0 for v in range(veerge): summa = summa + arvud[r][v] summad.append(summa) # Järgneb veerusummade leidmine for v in range(veerge): summa = 0 for r in range(ridu): summa = summa + arvud[r][v] summad.append(summa) # Diagonaalide summad summa_p = 0 summa_k = 0 for rv in range(ridu): summa_p = summa_p + arvud[rv][rv] summa_k = summa_k + arvud[rv][ridu-rv-1] summad.append(summa_p) summad.append(summa_k) #Maagilisuse kontroll on_maagiline = True for r in range(ridu + veerge): if summad[0] != summad[r]: on_maagiline = False #Ilus väljatrükk for r in range(ridu): for v in range(veerge): print("%3d" % arvud[r][v], end = "") print() #Vastuse väljastamine if on_maagiline == True: print("on maagiline ruut") else: print("ei ole maagiline ruut")