Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 6, 2018 16:21:19

Uired
Зарегистрирован: 2018-11-06
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Поменять значение

Есть код, который считает сумму элементов по нижней треугольной границе матрицы, а также находит максимальный элемент. Памагити сделать так, чтобы оно делало те самые операции только с левым “треугольником” матрицы, ваще не шарю какие значения нужно поменять(

 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()

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version