اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

مرحبا جورى،

لجمع المصفوفات يجب أن يكون لديها نفس الأبعاد (عدد الأسطر و الأعمدة متساوٍ بينها) جميعها لها N سطر , وجميعها لها M عمود

يمكنك تعديل البرنامج و القيام بإدخال أبعاد المصفوفة يدويا باستخدام بعد تعريف N-M 

cout << "أدخل أبعاد المصفوفة عدد الأسطر و عدد الأعمدة";
cin >> N >> M;
#include <iostream>
using namespace std;

int main()
{
  	int N = 10,M =10;
    int a[N][M]; // تعريف مصفوفة عددية تحمل 10 صف و في كل صف 10 أعمدة
    int b[N][M];
  	int c[N][M];
  	int sum[N][M]; // مصفوفة تحوي ناتج الجمع
  
    // هذه الحلقة لملأ المصفوفة
  	// نكررها 3 مرات
    for(int i = 0; i < N; i++) { // عمل حلقة للصفوف
        for(int j = 0; j < M; j++) { // عمل حلقة للأعمدة
            cin >> a[i][j]; // ملأ المصفوفة
        }
    }
  
  	for(int i = 0; i < N; i++) { // عمل حلقة للصفوف
        for(int j = 0; j < M; j++) { // عمل حلقة للأعمدة
            cin >> b[i][j]; // ملأ المصفوفة
        }
    }
  
  	for(int i = 0; i < N; i++) { // عمل حلقة للصفوف
        for(int j = 0; j < M; j++) { // عمل حلقة للأعمدة
            cin >> c[i][j]; // ملأ المصفوفة
        }
    }
  
  	// تحقيق عملية جمع المصفوفات
  	for(int i = 0; i < N; i++) { // عمل حلقة للصفوف
        for(int j = 0; j < M; j++) { // عمل حلقة للأعمدة
            sum[i][j] = a[i][j] + b[i][j] + c[i][j]; // حساب مجموع العناصر المتقابلة التي لها نفس السطر و العمود
        }
    }	

    // هذه الحلقة لطباعة عناصر المصفوفة
    for(int i = 0; i < 12; i++) {
        for(int j = 0; j < 10; j++) { 
            cout << sum[i][j] << " ";
        }
        
        cout << "\n"; // بعد طباعة كافة عناصر صف نقوم بالنزول سطر واحد
    }    
    
}

بالنسبة للناتج عليك القيام بمثال و إدخال قيم تجريبية (يفضل استخدام أبعاد lمصفوفة صغيرة 3 أو 4 و تجريب البرنامج السابق

بالتوفيق

  • 0
نشر
بتاريخ 2 دقائق مضت قال جوري جوري2:

 

بما أن البرنامج أصبح لديك،

أقترج تجريب حل السؤال بمخطط سير العمليات ونشر نتيجتك ومن ثم إذا احتوت على أخطاء سنقوم بإصلاحها لك،

بشكل عام للتدريب على البرمجة و الخوارزميات أنصحك بتجريب الحل شخصيا و استشارتنا عند عدم تمنك من ايجاد الفكرة 

وليس الاعتماد بشكل كلي علينا لحل أسئلتك.

شكرا لك و بالتوفيق

  • 0
نشر

( السؤال له علاقة بالخوارزمية )

الكود هو تنفيذ للخوارزميات ولكن الخوارزميات ليست كود الخوارزميات ليس لغة برمجة ولكنها التفكير المنطقي لكتابة الكود أو التفكير كما يفكر الحسوب لكتابة الأكواد لكي يكن الكود أقصر وأنظف فيوجد العديد من طرق كتابة كود لجمع مصفوفات من الرتبة الثانية على المثال ولكن يوجد طريق أقصر بواسطة فهمك للخوارزميات تستطيع تنفيذه ويوجد طريق طويل بدون فهمك وتطبيقك للخورارزميات في طريقة تفكيرك في الكود وكتابتك له سوف تجعل الكود أطول وأكبر .

فالخورازميات هي خطوات تمشي عليها لينتج في الأخر كتابة كود احترافي وقصير ومفهوم لك وللغير بدون التشتت لأن لديك مراحل للتفكير في كتابة الكود وهذا الأساس وليس حفظ نماذج برمجية  لكتابة خوارزمية ما ولكن طريقة التفكير أهم .

فالسؤال له علاقة بالخوارزمية بالفعل في الخطوات المنطقية لكتابة الكود ولكن له علاقة بالبرمجة أيضاً لأنها هي الكود الذي سوف تكتبه .

بالتوفيق .

  • 0
نشر
بتاريخ منذ ساعة مضت قال جوري جوري2:

كيف أحل السؤال بمخطط سير العمليات

مرحبا،

يوجد برنامج visual paradigm مخصص لتصميم المخططات، أنا استخدمت الخدمة المتوفرة على الانترنت.

الصورة المرفقة لمخطط سير العمليات وهو تقريبي يمكنك الاعتماد عليه.

بالتوفيق

مجموع ثلاث مصفوفات.vpd.png

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...