Python location of max number in matrix
(The Location class) Design a class named Location for locating a maximal value and its location in a two-dimensional list. The class contains the public data fields row, column, and maxValue that store the maximal value and its indexes in a two-dimensional list, with row and column as int types and maxValue as a float type.
Write the following method that returns the location of the largest element in a two-dimensional list.
def findLocation(self):
The return value is an instance of Location. Write a test program that prompts the user to enter a two-dimensional list and displays the location of the largest element in the list.
class Location:
def __init__(self, row = 0, column = 0, maxValue = 0):
self.row = row
self.column = column
self.maxValue = maxValue
self.matrix = []
def getRow(self):
return self.row
def getColumn(self):
return self.column
def getMaxValue(self):
return self.maxValue
def setRow(self, row):
self.row = row
def setColumn(self, column):
self.column = column
def setMatrix(self):
self.matrix = [[0 for i in range(self.column)] for j in range(self.row)]
def printMatrix(self):
for i in range(len(self.matrix)):
for j in range(len(self.matrix[i])):
print(self.matrix[i][j], end=' ')
print()
def enterRows(self):
while self.matrix[2][3] == 0:
for i in range(self.row):
for j in range(self.column):
self.matrix[i][j] = eval(input('Enter number in row: '))
def locationOfmax(self):
self.maxValue = 0
for i in range(len(self.matrix)):
for j in range(len(self.matrix[i])):
if self.matrix[i][j] > self.maxValue:
self.maxValue = self.matrix[i][j]
def findLocation(self):
self.i = 0
self.j = 0
for i in range(len(self.matrix)):
for j in range(len(self.matrix[i])):
if self.matrix[i][j] == self.maxValue:
self.i = i
self.j = j
print('Location of matrix max:', self.maxValue, ' is row: ',self.i + 1, ' and column: ', self.j + 1)
m = Location()
m.setRow(3)
m.setColumn(4)
m.setMatrix()
m.enterRows()
m.printMatrix()
m.locationOfmax()
m.findLocation()
def __init__(self, row = 0, column = 0, maxValue = 0):
self.row = row
self.column = column
self.maxValue = maxValue
self.matrix = []
def getRow(self):
return self.row
def getColumn(self):
return self.column
def getMaxValue(self):
return self.maxValue
def setRow(self, row):
self.row = row
def setColumn(self, column):
self.column = column
def setMatrix(self):
self.matrix = [[0 for i in range(self.column)] for j in range(self.row)]
def printMatrix(self):
for i in range(len(self.matrix)):
for j in range(len(self.matrix[i])):
print(self.matrix[i][j], end=' ')
print()
def enterRows(self):
while self.matrix[2][3] == 0:
for i in range(self.row):
for j in range(self.column):
self.matrix[i][j] = eval(input('Enter number in row: '))
def locationOfmax(self):
self.maxValue = 0
for i in range(len(self.matrix)):
for j in range(len(self.matrix[i])):
if self.matrix[i][j] > self.maxValue:
self.maxValue = self.matrix[i][j]
def findLocation(self):
self.i = 0
self.j = 0
for i in range(len(self.matrix)):
for j in range(len(self.matrix[i])):
if self.matrix[i][j] == self.maxValue:
self.i = i
self.j = j
print('Location of matrix max:', self.maxValue, ' is row: ',self.i + 1, ' and column: ', self.j + 1)
m = Location()
m.setRow(3)
m.setColumn(4)
m.setMatrix()
m.enterRows()
m.printMatrix()
m.locationOfmax()
m.findLocation()
SOLUTION:
Enter
number in row: 23.5
Enter
number in row: 35
Enter
number in row: 2
Enter
number in row: 10
Enter
number in row: 4.5
Enter
number in row: 3
Enter
number in row: 45
Enter
number in row: 3.5
Enter
number in row: 35
Enter
number in row: 44
Enter
number in row: 5.5
Enter
number in row: 12.6
23.5
35 2 10
4.5
3 45 3.5
35
44 5.5 12.6
Location
of matrix max: 45 is row: 2 and
column: 3
Коментари
Постави коментар