این برنامه پایتون یک ماتریس دوبعدی را دریافت کرده و آن را ۹۰ درجه در جهت ساعتگرد میچرخاند.
برای چرخش، ابتدا ماتریس را ترانهاده کرده و سپس سطرهای آن را معکوس میکنیم.
def rotate_90(matrix: list[list[int]]) -> list[list[int]]:
# ترانهاده
transposed = list(zip(*matrix))
# معکوس کردن سطرها
rotated = [list(row)[::-1] for row in transposed]
return rotated
def print_matrix(matrix: list[list[int]]):
for row in matrix:
print(" ".join(str(val) for val in row))
# دادههای نمونه
original = [
[12, 11, 10],
[22, 21, 20],
[32, 31, 30],
[42, 41, 40]
]
print("ماتریس اولیه:")
print_matrix(original)
rotated = rotate_90(original)
print("\nماتریس پس از چرخش ۹۰ درجه:")
print_matrix(rotated)
ماتریس اولیه:
12 11 10
22 21 20
32 31 30
42 41 40
ماتریس پس از چرخش ۹۰ درجه:
42 32 22 12
41 31 21 11
40 30 20 10