این برنامه پایتون یک ماتریس دوبعدی را از ورودی دریافت کرده و حاصلضرب عناصر غیر محیطی که مقدارشان صفر نیست را محاسبه و نمایش میدهد.
عناصر محیطی شامل سطر اول، سطر آخر، ستون اول و ستون آخر هستند.
def read_matrix(rows: int, cols: int) -> list[list[int]]:
print(f"ورود عناصر ماتریس {rows}×{cols}:")
matrix = []
for i in range(rows):
row = list(map(int, input(f"سطر {i+1}: ").strip().split()))
if len(row) != cols:
print("تعداد عناصر در هر سطر باید برابر با تعداد ستونها باشد.")
exit()
matrix.append(row)
return matrix
def product_of_inner_nonzero(matrix: list[list[int]]) -> int:
rows = len(matrix)
cols = len(matrix[0])
product = 1
found = False
for i in range(1, rows - 1):
for j in range(1, cols - 1):
val = matrix[i][j]
if val != 0:
product *= val
found = True
return product if found else 0
def print_matrix(matrix: list[list[int]]):
print("ماتریس ورودی:")
for row in matrix:
print(" ".join(str(val) for val in row))
# دریافت ابعاد ماتریس
r = int(input("تعداد سطرها: "))
c = int(input("تعداد ستونها: "))
if r < 3 or c < 3:
print("برای داشتن عناصر غیر محیطی، ماتریس باید حداقل ۳×۳ باشد.")
exit()
# خواندن و پردازش
mat = read_matrix(r, c)
print_matrix(mat)
result = product_of_inner_nonzero(mat)
print(f"\nحاصلضرب عناصر غیر محیطی غیر صفر: {result}")
تعداد سطرها: 4
تعداد ستونها: 4
ورودی:
12 11 10 9
22 0 3 8
32 4 2 7
42 41 40 6
خروجی:
حاصلضرب عناصر غیر محیطی غیر صفر: 3 × 4 × 2 = 24