الانتقال إلى المحتوى الرئيسي

كيفية إخراج صفيف ثنائي الأبعاد ج

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

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

نموذج التعليمات البرمجية في ج:

# تشمل

# تعريف ن 3

# تعريف م 4

كثافة العمليات الرئيسية()

{

إنت أر[ن] [م] = {{1, 2, 3, 4},

{5, 6, 7, 8},

{9, 10, 11, 12}};

إلى عن على (الباحث الأول = 0; أنا < ن; أنا i)

{

إلى عن على (الباحث ي = 0 ؛ ي < م ؛ ي++)

{

برينتف ("٪د " ، أر [ط] [ي]);

}

برينتف("

");

}

العودة 0;

}

في هذا المثال ، صفيف ثنائي الأبعاد أر مع حجم ن الصفوف و م الأعمدة مليئة بالقيم من 1 إلى 12. ثم ، باستخدام الحلقات المتداخلة ، يتم عرض كل عنصر من عناصر المصفوفة على الشاشة باستخدام وظيفة برينتف. تتكرر الحلقة الأولى من خلال الصفوف ، وتتكرر الحلقة الثانية من خلال الأعمدة. في نهاية كل سطر ، حرف سطر جديد

هو الإخراج.

بعد تنفيذ البرنامج ، سوف نحصل على النتيجة التالية:

1 2 3 4

5 6 7 8

9 10 11 12

وبالتالي ، يتم عرض مصفوفة ثنائية الأبعاد مجزأة باستخدام حلقات متداخلة في لغة البرمجة سي.

  1. كيفية طباعة صفيف ثنائي الأبعاد برمجيا
  2. البعد الصفيف وبناء الجملة
  3. عبور عناصر مصفوفة ثنائية الأبعاد
  4. 1. دورات
  5. 2. باستخدام المكرر
  6. 3. العودية

كيفية طباعة صفيف ثنائي الأبعاد برمجيا

في البرمجة ، المصفوفة ثنائية الأبعاد عبارة عن جدول يتكون من صفوف وأعمدة. كل عنصر من عناصر المصفوفة ثنائية الأبعاد له إحداثياته الخاصة-رقم الصف ورقم العمود.

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

صفيف = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

للصف في صفيف:

للعنصر في الصف:

طباعة (عنصر ، نهاية=" ")

طباعة()

في هذا المثال ، يتم إنشاء صفيف صفيف ثنائي الأبعاد يحتوي على 3 صفوف و 3 أعمدة. مع مساعدة من اثنين من الحلقات المتداخلة ، يتم اجتياز جميع عناصر المصفوفة. تخرج الحلقة الداخلية كل عنصر من عناصر المصفوفة وتضيف مسافة بعده. بعد نهاية الحلقة الداخلية ، يتم إخراج حرف سطر جديد بحيث تتم طباعة السطر التالي من قيمة الصفيف على سطر جديد.

ستبدو نتيجة تنفيذ هذا الرمز على الشاشة كما يلي:

1 2 3

4 5 6

7 8 9

يمكنك أيضا استخدام لغة البرمجة سي programming:

# تشمل 

كثافة العمليات الرئيسية () {

صفيف كثافة العمليات[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};

إلى عن على (كثافة العمليات أنا = 0; أنا < 3; أنا i) {

إلى عن على (الباحث ي = 0 ؛ ي < 3 ؛ ي++) {

الأمراض المنقولة جنسيا:: كوت < < صفيف[ط][ي]<<"";

}

الأمراض المنقولة جنسيا:: كوت << الأمراض المنقولة جنسيا:: إندل;

}

العودة 0;

}

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

ستكون نتيجة تنفيذ هذا الرمز مشابهة للمثال السابق:

1 2 3

4 5 6

7 8 9

يتيح لك إخراج مصفوفة ثنائية الأبعاد برمجيا عرض جميع قيم المصفوفة بسهولة واستخدامها في مزيد من العمل.

البعد الصفيف وبناء الجملة

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

لإعلان صفيف ثنائي الأبعاد في اللغة ج ، يتم استخدام بناء الجملة التالي:

اسم صف نوع البيانات [عدد الصفوف] [عدد الأعمدة];

على سبيل المثال ، يمكنك إعلان مصفوفة ثنائية الأبعاد من الأعداد الصحيحة على النحو التالي:

صفيف ثنائي الأبعاد [3] [3];

وهكذا ، نعلن صفيف ثنائي الأبعاد مع ثلاثة صفوف وثلاثة أعمدة. ومع ذلك ، هذا مجرد إعلان صفيف ، ولا تتم تهيئة عناصره.

لتهيئة مصفوفة ثنائية الأبعاد فور الإعلان ، يمكنك استخدام بناء الجملة التالي:

نوع بيانات اسم الصفيف[عدد الصفوف] [عدد الأعمدة] = { {القيمة 1, القيمة 2, ...}, {القيمة 1, القيمة 2,...}, ... };

على سبيل المثال ، لتهيئة مصفوفة ثنائية الأبعاد من الأعداد الصحيحة ، يمكنك الكتابة:

كثافة العمليات صفيف ثنائي الأبعاد[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };

وهكذا ، أنشأنا مصفوفة ثنائية الأبعاد وملأناها بقيم من 1 إلى 9.

يتم استخدام فهرسين للوصول إلى عناصر مصفوفة ثنائية الأبعاد: يشير الفهرس الأول إلى صف ، والثاني إلى عمود. على سبيل المثال ، للحصول على قيمة عنصر الصف الثاني والعمود الثالث ، يمكنك استخدام بناء الجملة التالي:

قيمة كثافة العمليات = مصفوفة ثنائية الأبعاد[1] [2];

في هذه الحالة ، ستكون القيمة 6.

صفائف ثنائية الأبعاد في ج مفيدة جدا للعمل مع المصفوفات أو الجداول أو هياكل البيانات الأخرى التي يمكن تمثيلها كجدول.

عبور عناصر مصفوفة ثنائية الأبعاد

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

1. دورات

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

مثال:

كثافة العمليات [] [] مصفوفة = {

{1, 2, 3},

{4, 5, 6},

{7, 8, 9}

};

الصفوف كثافة العمليات = مصفوفة.الطول;

الأعمدة كثافة العمليات = مصفوفة [0].الطول;

ل (إنت أنا = 0 ؛ أنا < الصفوف ؛ أنا i) {

إلى عن على (الباحث ي = 0 ؛ ي < الأعمدة ؛ ي++) {

عنصر كثافة العمليات = مصفوفة [ط] [ي];

// تنفيذ العمليات مع عنصر

}

}

2. باستخدام مكرر

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

مثال:

كثافة العمليات [] [] مصفوفة = {

{1, 2, 3},

{4, 5, 6},

{7, 8, 9}

};

مكرر مكرر = صفائف.تيار (مصفوفة)

.فلاتمابوانت (صفائف:: تيار)

.مكرر ();

بينما (مكرر.هاسنكست ()) {

كثافة العمليات عنصر = مكرر.التالي();

// تنفيذ العمليات على العنصر

}

3. العودية

العودية هي طريقة لحل مشكلة بتقسيمها إلى مهام فرعية أبسط ، والتي يتم حلها عن طريق استدعاء دالة نفسها. في حالة عبور مصفوفة ثنائية الأبعاد ، يمكن استدعاء دالة تكرارية لكل عنصر من عناصر المصفوفة.

مثال:

اجتياز الفراغ (كثافة العمليات[][] مصفوفة ، صف كثافة العمليات ، عمود كثافة العمليات) {

إذا (صف < 0