Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Learn Typing

تحديات برمجيةالتحدي الخامس - حل التمرين الخامس بلغة بايثون

المطلوب

أكتب برنامج يعرّف مصفوفة مربعة إسمها matrix تتألف من 3 أسطر و 3 أعمدة.
ثم يطلب من المستخدم إدخال قيم لها.
إنتبه: نريد هذه المصفوفة أن تحتوي فقط على قيم أكبر أو تساوي صفر.
ثم يعرض للمستخدم جميع القيم التي أصبحت تحتويها المصفوفة.
بعدها يقوم بجمع قيم جميع العناصر الموجودة على القطر ( On Diagonal ), فوق القطر ( Above Diagonal ), و تحت القطر ( Under Diagonal ).
في الأخير يعرض للمستخدم ناتج الجمع.


الحل بلغة بايثون

rows = 3
cols = 3
matrix = [[0] * cols for i in range(rows)]
sum_on_diagonals = 0
sum_above_diagonals = 0
sum_under_diagonals = 0
for i in range(rows):
for j in range(cols):
matrix[i][j] = int(input("Enter matrix[" + str(i) + "][" + str(j) + "]: "))
for i in range(rows):
for j in range(cols):
if j > i:
sum_above_diagonals += matrix[i][j]
elif j < i:
sum_under_diagonals += matrix[i][j]
else:
sum_on_diagonals += matrix[i][j]
print('\nSum of elements above diagonals:', sum_above_diagonals)
print('Sum of elements under diagonals:', sum_under_diagonals)
print('Sum of elements on diagonals:', sum_on_diagonals)
rows = 3 cols = 3 matrix = [[0] * cols for i in range(rows)] sum_on_diagonals = 0 sum_above_diagonals = 0 sum_under_diagonals = 0 for i in range(rows): for j in range(cols): matrix[i][j] = int(input("Enter matrix[" + str(i) + "][" + str(j) + "]: ")) for i in range(rows): for j in range(cols): if j > i: sum_above_diagonals += matrix[i][j] elif j < i: sum_under_diagonals += matrix[i][j] else: sum_on_diagonals += matrix[i][j] print('\nSum of elements above diagonals:', sum_above_diagonals) print('Sum of elements under diagonals:', sum_under_diagonals) print('Sum of elements on diagonals:', sum_on_diagonals)

سنحصل على النتيجة التالية في حال تم إدخال نفس القيم التي تم تعليمها باللون الأصفر عند التشغيل.

Enter matrix[0][0]: 1
Enter matrix[0][1]: 2
Enter matrix[0][2]: 3
Enter matrix[1][0]: 4
Enter matrix[1][1]: 5
Enter matrix[1][2]: 6
Enter matrix[2][0]: 7
Enter matrix[2][1]: 8
Enter matrix[2][2]: 9

Sum of elements above diagonals: 11
Sum of elements under diagonals: 19
Sum of elements on diagonals: 15