last lab
This commit is contained in:
32
labPython/lab5/MatrixMethods.py
Executable file
32
labPython/lab5/MatrixMethods.py
Executable file
@@ -0,0 +1,32 @@
|
||||
from random import randint
|
||||
|
||||
def initnxnMatrix(count:int)->list[list]:
|
||||
Array = [[randint(1, 100) for _ in range(count)] for _ in range(count)]
|
||||
return Array
|
||||
|
||||
def printMatrix(Array:list[list])->None:
|
||||
for i in range(len(Array)+1):
|
||||
print(f"{i}\t", end="")
|
||||
print("")
|
||||
for index in range(len(Array)):
|
||||
print(f"{index+1}\t", end="")
|
||||
for value in Array[index]:
|
||||
print(f"{value}\t", end="")
|
||||
print("")
|
||||
|
||||
def transDiagonalMatrix(Array:list[list], i:int)->list:
|
||||
if Array[i] != Array[-(i+1)]:
|
||||
Array[i] += Array[-(i+1)]
|
||||
Array[-(i+1)] = Array[i] - Array[-(i+1)]
|
||||
Array[i] = Array[i] - Array[-(i+1)]
|
||||
return Array
|
||||
|
||||
def divideEvenColumnsMainDiagonal(Array:list[list])->list[list]:
|
||||
mainDiagonal = 0
|
||||
for index, element in enumerate(Array):
|
||||
mainDiagonal += element[index]
|
||||
for elementIndex, element in enumerate(Array):
|
||||
for index in range(len(element)):
|
||||
if (index + 1)%2==0:
|
||||
Array[elementIndex][index] //= mainDiagonal
|
||||
return Array
|
||||
Reference in New Issue
Block a user