إعلان
تعلم الآن

الخوارزميات و هياكل البيانات التحدي الخامس - حل التمرين الخامس بلغة C

المطلوب

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


الحل بلغة C

#include <stdio.h>

void main() {
	
    int rows = 3;
    int cols = 3;
    int matrix[rows][cols];
    int sumOnDiagonals = 0;
    int sumAboveDiagonals = 0;
    int sumUnderDiagonals = 0;
    
    for (int i = 0; i < rows; i++)
    {
        for (int j = 0; j < cols; j++)
        {
            printf("Enter matrix[%d][%d]: ", i, j);
            scanf("%d", &matrix[i][j]);
        }
    }
    
	for (int i = 0; i < rows; i++)
    {
        for (int j = 0; j < cols; j++)
        {
            if (j > i)
            {
                sumAboveDiagonals += matrix[i][j];
            }
            else if (j < i)
            {
                sumUnderDiagonals += matrix[i][j];
            }
            else
            {
                sumOnDiagonals += matrix[i][j];
            }
        }
    }
    
    printf("\nNumber of elements above diagonals: %d", sumAboveDiagonals);
    printf("\nNumber of elements under diagonals: %d", sumUnderDiagonals);
    printf("\nNumber of elements on diagonals: %d", sumOnDiagonals);
    
}
		

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

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
إعلان
دورة أساسيات و إدارة أنظمة لينكس في هذه الدورة ستتعلم أساسيات نظام لينكس، أوامره و إدارته بالتطبيق العملي، كما ستتعلم كيفية إستضافة مواقع ووردبريس عليه. سعر الدورة الآن هو 30 ريال سعودي.
سعر الدورة الآن هو 30 ريال سعودي فقط.
تعلم الآن

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة