import math
import random
# Set n and m to 5
n = m = 5
masB = []
maindiag = []
i = j = int()
diff = int()
f = int()
t = int()
min_val = int()
# Create the matrix with random values between -50 and 50
for i in range(0, n, 1):
masB.append([])
for j in range(0, m, 1):
masB[i].append(random.randint(-50, 50))
print(f"\nMatrix {n}*{m} masB=:")
for i in range(0, n, 1):
for j in range(0, m, 1):
print(f"{masB[i][j]:3}", end="|")
print()
# Calculate absolute differences along the main diagonal
for i in range(0, n-1, 1):
diff = math.fabs(masB[i][i] - masB[i+1][i+1]) # Calculate absolute difference on main diagonal
maindiag.append(diff)
print(f"\nAbsolute differences between adjacent elements on the main diagonal: {maindiag}")
# Sort the list of absolute differences
maindiag.sort()
print("Result maindiag:")
for i in range(0, len(maindiag), 1):
print(f"{maindiag[i]:3}", end="")
# Find the minimum difference
if len(maindiag) > 0:
min_val = maindiag[0] # The smallest value in a sorted list is the first element
print(f"\nmin={min_val:4}")
else:
print("\nNo diagonal differences to compute.")
aW1wb3J0IG1hdGgKaW1wb3J0IHJhbmRvbQoKIyBTZXQgbiBhbmQgbSB0byA1Cm4gPSBtID0gNQptYXNCID0gW10KbWFpbmRpYWcgPSBbXQppID0gaiA9IGludCgpCmRpZmYgPSBpbnQoKQpmID0gaW50KCkKdCA9IGludCgpCm1pbl92YWwgPSBpbnQoKQoKIyBDcmVhdGUgdGhlIG1hdHJpeCB3aXRoIHJhbmRvbSB2YWx1ZXMgYmV0d2VlbiAtNTAgYW5kIDUwCmZvciBpIGluIHJhbmdlKDAsIG4sIDEpOgogICAgbWFzQi5hcHBlbmQoW10pCiAgICBmb3IgaiBpbiByYW5nZSgwLCBtLCAxKToKICAgICAgICBtYXNCW2ldLmFwcGVuZChyYW5kb20ucmFuZGludCgtNTAsIDUwKSkKCnByaW50KGYiXG5NYXRyaXgge259KnttfSBtYXNCPToiKQpmb3IgaSBpbiByYW5nZSgwLCBuLCAxKToKICAgIGZvciBqIGluIHJhbmdlKDAsIG0sIDEpOgogICAgICAgIHByaW50KGYie21hc0JbaV1bal06M30iLCBlbmQ9InwiKQogICAgcHJpbnQoKQoKIyBDYWxjdWxhdGUgYWJzb2x1dGUgZGlmZmVyZW5jZXMgYWxvbmcgdGhlIG1haW4gZGlhZ29uYWwKZm9yIGkgaW4gcmFuZ2UoMCwgbi0xLCAxKToKICAgIGRpZmYgPSBtYXRoLmZhYnMobWFzQltpXVtpXSAtIG1hc0JbaSsxXVtpKzFdKSAgIyBDYWxjdWxhdGUgYWJzb2x1dGUgZGlmZmVyZW5jZSBvbiBtYWluIGRpYWdvbmFsCiAgICBtYWluZGlhZy5hcHBlbmQoZGlmZikKCnByaW50KGYiXG5BYnNvbHV0ZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIGFkamFjZW50IGVsZW1lbnRzIG9uIHRoZSBtYWluIGRpYWdvbmFsOiB7bWFpbmRpYWd9IikKCiMgU29ydCB0aGUgbGlzdCBvZiBhYnNvbHV0ZSBkaWZmZXJlbmNlcwptYWluZGlhZy5zb3J0KCkKCnByaW50KCJSZXN1bHQgbWFpbmRpYWc6IikKZm9yIGkgaW4gcmFuZ2UoMCwgbGVuKG1haW5kaWFnKSwgMSk6CiAgICBwcmludChmInttYWluZGlhZ1tpXTozfSIsIGVuZD0iIikKCiMgRmluZCB0aGUgbWluaW11bSBkaWZmZXJlbmNlCmlmIGxlbihtYWluZGlhZykgPiAwOgogICAgbWluX3ZhbCA9IG1haW5kaWFnWzBdICAjIFRoZSBzbWFsbGVzdCB2YWx1ZSBpbiBhIHNvcnRlZCBsaXN0IGlzIHRoZSBmaXJzdCBlbGVtZW50CiAgICBwcmludChmIlxubWluPXttaW5fdmFsOjR9IikKZWxzZToKICAgIHByaW50KCJcbk5vIGRpYWdvbmFsIGRpZmZlcmVuY2VzIHRvIGNvbXB1dGUuIik=