Не забудьте упомянуть язык .Я предполагаю, что это питон.Также попробуйте запустить и протестировать код перед публикацией.Этот код не работает вообще.
Это работающая версия кода, который вы отправили в python:
def largestlowest(matrix):
largeset = 0
lowest = 0
for row in range(len(matrix)):
for col in range(len(matrix[row])-1):
if (matrix[row][col] > matrix[row][col+1]):
largest = matrix[row][col]
if (matrix[row][col] < matrix[row][col+1]):
lowest = matrix[row][col]
return (largest, lowest)
print(largestlowest([[4,8,2,9,34,57,22,44], [1,2,8,9,1,2,55,3,22,4]]))
Обратите внимание, что для доступа к элементу списка вы должны вызвать его как row
иcolumn
: matrix[row][col]
.
Есть несколько неправильных вещей:
- Вы поднялись до
(len(matrix[row])-1)
и поэтому не включаете последний столбец. - Затем вы сравниваете соседние элементы
matrix[row][col] > matrix[row][col+1]
вместо того, чтобы сравнивать все из них с самым низким и самым большим. - Вы назначаете самый низкий элемент 0, который всегда будет ниже, чем все ваши элементы
return a and b
вернет a
только
Я рекомендую вам искать каждый шаг (например, как вызвать матричный элемент в python ).Вы найдете много информации в Интернете.Попробуйте запустить код как можно быстрее и устранить ошибки в консоли.Наконец, код, который делает то, что вы хотите (я думаю):
def largestlowest(matrix):
if (not len(matrix)):
return ("Matrix should have at least one element!")
## assign largest and lowest to first element of martix
largest = lowest = matrix[0][0]
for row in range(len(matrix)):
for col in range(len(matrix[row])):
if (matrix[row][col] > largest):
largest = matrix[row][col]
if (matrix[row][col] < lowest):
lowest = matrix[row][col]
# return (largest, lowest)
return "Largest element of matrix: %d, lowest element of matrix: %d" % (largest, lowest)
print(largestlowest([[4,8,2,9,34,57,22,44], [1,2,8,9,1,2,55,3,22,4]]))
print(largestlowest([]))