Форум сайта python.su
Есть код, который считает сумму элементов по нижней треугольной границе матрицы, а также находит максимальный элемент. Памагити сделать так, чтобы оно делало те самые операции только с левым “треугольником” матрицы, ваще не шарю какие значения нужно поменять(
while True: print("---------------------------------------------") n=4 a=[[1,2,3,4],[4,5,8,9],[8,9,1,2],[6,7,8,9]] print("\nСтартовая матрица:") for row in a: for elem in row: print(elem,end='') print() s=0 ip=0; ik=n-1 for i in range(n-1,-1,-1): if i==(n-1): s=sum(a[i]); M=max(a[i]) else: ip+=1; ik-=1 if ip<=ik: M=max(M,max(a[i][ip:ik+1:1])) if ip!=ik: s=s+a[i][ip]+a[i][ik] else: s=s+a[i][ip] else: break print("\nСумма элементов по границе матрицы",s) print("\nMAX значение:",M) print("\nИндексы максимального значения") ind=[] ip=0; ik=n-1 for i in range(n-1,1,-1): if ip<=ik: for j in range(ip,ik+1,1): if a[i][j]==M: ind.append([i+1,j+1]) ip+=1; ik-=1 else: break print(sorted(ind)) p=input() if p!='1': quit()
Офлайн