تمرين - إنشاء أسلوب لعرض النتائج
في هذه الخطوة، ستقوم بتعريف الأسلوب لعرض نتائج المجموعات الحيوانية. كما ستكمل مهام مجموعة الحيوانات للمدارس الزائرة الأخرى. لنبدأ!
تطوير أسلوبك
أدخل سطر تعليمة برمجية فارغا جديدا. ثم حدد
PrintGroup
الأسلوب عن طريق إدخال التعليمات البرمجية التالية.void PrintGroup(string[,] group) { }
تذكر أنك قررت أن هذا الأسلوب سيتخذ صفيفا ثلاثي الأبعاد كإدخال. الآن تحتاج فقط إلى الأسلوب الخاص بك لطباعة محتويات الصفيف 2D.
أضف التعليمات البرمجية
PrintGroup
التالية إلى الأسلوب :void PrintGroup(string[,] group) { for (int i = 0; i < group.GetLength(0); i++) { for (int j = 0; j < group.GetLength(1); j++) { Console.Write($"{group[i,j]} "); } } }
هنا، يمكنك استخدام
GetLength(0)
للحصول على عدد الصفوف في الصفيف، وعددGetLength(1)
الأعمدة. ثم يمكنك استخدامConsole.Write
لطباعة العنصر مع بعض المسافات الإضافية بين الحيوانات. بعد ذلك، دعنا نضيف بعض نص المساعد وسطرا جديدا لفصل المجموعات.تحديث الأسلوب الخاص بك مع التعليمات البرمجية التالية:
void PrintGroup(string[,] group) { for (int i = 0; i < group.GetLength(0); i++) { Console.Write($"Group {i + 1}: "); for (int j = 0; j < group.GetLength(1); j++) { Console.Write($"{group[i,j]} "); } Console.WriteLine(); } }
الآن لديك جميع التعليمات البرمجية في مكان لإكمال المهمة للتحضير لزيارة المدرسة.
PrintGroup
حدد موقع استدعاء الأسلوب وأزل أحرف البداية//
.بعد ذلك، ستقوم بتشغيل التعليمات البرمجية الخاصة بك ومراقبة النتائج.
احفظ ثم قم بتشغيل التعليمات البرمجية الخاصة بك عن طريق إدخال تشغيل dotnet tt موجه الأوامر Terminal.
للتحقق من أن التعليمات البرمجية الخاصة بك تعمل كما هو متوقع، تحقق من أن إخراج التطبيق الخاص بك مشابه للإخراج التالي، مع مراعاة الترتيب العشوائي للحيوانات:
School A Group 1: ducks emus rabbits Group 2: lemurs chickens geese Group 3: iguanas macaws alpacas Group 4: goats kangaroos pigs Group 5: capybaras llamas tortoises Group 6: sheep ostriches ponies
ضع في اعتبارك أنك بحاجة إلى تنفيذ نفس المهام لكل مدرسة. وستكون الاختلافات هي اسم المدرسة وعدد المجموعات. هذه فرصة مثالية لاستخدام أسلوب مع تلك المعلمات.
إنشاء سطر تعليمة برمجية
RandomizeAnimals()
فارغة جديد أعلى استدعاء الأسلوب. ثم قم بإنشاء أسلوب جديد عن طريق إدخال التعليمات البرمجية التالية:void PlanSchoolVisit(string schoolName, int groups = 6) { RandomizeAnimals(); string[,] group = AssignGroup(); Console.WriteLine("School A"); PrintGroup(group); }
باستخدام هذه التعليمات البرمجية، يمكنك تنفيذ نفس المهام لكل مدرسة. يمكنك أيضا تعيين
groups
إلى القيمة الافتراضية ل6
. بعد ذلك، ستقوم بتحديث الأسلوب الخاص بك لاستخدام قيم الإدخال.تحديث الأسلوب الخاص بك مع التعليمات البرمجية التالية:
void PlanSchoolVisit(string schoolName, int groups = 6) { RandomizeAnimals(); string[,] group = AssignGroup(groups); Console.WriteLine(schoolName); PrintGroup(group); }
الآن أنت مستعد لاستدعاء هذه الطريقة لكل مدرسة من المدارس.
إنشاء سطر تعليمة برمجية
PlanSchoolVisit
فارغة جديد أعلى الأسلوب. ثم أدخل التعليمات البرمجية التالية:PlanSchoolVisit("School A"); PlanSchoolVisit("School B", 3); PlanSchoolVisit("School C", 2);
تحقق من عملك
في هذه المهمة، ستقوم بتشغيل التطبيق الخاص بك من الوحدة الطرفية المتكاملة والتحقق من أن التعليمات البرمجية تعمل بشكل صحيح. لنبدأ.
قارن التعليمات البرمجية بما يلي للتأكد من صحتها:
using System; string[] pettingZoo = { "alpacas", "capybaras", "chickens", "ducks", "emus", "geese", "goats", "iguanas", "kangaroos", "lemurs", "llamas", "macaws", "ostriches", "pigs", "ponies", "rabbits", "sheep", "tortoises", }; PlanSchoolVisit("School A"); PlanSchoolVisit("School B", 3); PlanSchoolVisit("School C", 2); void PlanSchoolVisit(string schoolName, int groups = 6) { RandomizeAnimals(); string[,] group1 = AssignGroup(groups); Console.WriteLine(schoolName); PrintGroup(group1); } void RandomizeAnimals() { Random random = new Random(); for (int i = 0; i < pettingZoo.Length; i++) { int r = random.Next(i, pettingZoo.Length); string temp = pettingZoo[r]; pettingZoo[r] = pettingZoo[i]; pettingZoo[i] = temp; } } string[,] AssignGroup(int groups = 6) { string[,] result = new string[groups, pettingZoo.Length/groups]; int start = 0; for (int i = 0; i < groups; i++) { for (int j = 0; j < result.GetLength(1); j++) { result[i,j] = pettingZoo[start++]; } } return result; } void PrintGroup(string[,] groups) { for (int i = 0; i < groups.GetLength(0); i++) { Console.Write($"Group {i + 1}: "); for (int j = 0; j < groups.GetLength(1); j++) { Console.Write($"{groups[i,j]} "); } Console.WriteLine(); } }
احفظ عملك باستخدام Ctrl + S أو باستخدام قائمة Visual Studio Code File.
إذا لزم الأمر، افتح لوحة المحطة الطرفية المتكاملة في Visual Studio Code.
في لوحة EXPLORER، لفتح Terminal في موقع مجلد TestProject، انقر بزر الماوس الأيمن فوق TestProject، ثم حدد Open in Integrated Terminal.
في موجه الأوامر Terminal، أدخل dotnet run
تحقق من أن إخراج التطبيق الخاص بك يشبه ما يلي، مع مراعاة الترتيب العشوائي للحيوانات:
School A Group 1: kangaroos lemurs pigs Group 2: alpacas sheep chickens Group 3: ducks geese capybaras Group 4: ponies iguanas tortoises Group 5: ostriches llamas rabbits Group 6: macaws goats emus School B Group 1: llamas ducks ponies geese chickens goats Group 2: iguanas capybaras macaws kangaroos rabbits sheep Group 3: lemurs tortoises alpacas pigs emus ostriches School C Group 1: sheep ducks pigs macaws kangaroos ostriches rabbits goats lemurs Group 2: iguanas capybaras chickens emus tortoises geese ponies alpacas llamas
يجب عليك التحقق من أن School A تحتوي على ست مجموعات، و School B لديها ثلاث مجموعات، و School C لديها مجموعتين. يجب أن يكون ترتيب الحيوانات عشوائيا لكل مدرسة.
إذا كانت التعليمات البرمجية الخاصة بك تنتج أخطاء غير متوقعة، فستحتاج إلى مراجعة التعليمات البرمجية الخاصة بك للعثور على الخطأ وإجراء التحديثات. قم بتشغيل التعليمات البرمجية مرة أخرى لمعرفة ما إذا كنت قد أصلحت المشكلة. متابعة تحديث التعليمات البرمجية وتشغيلها حتى تنتج التعليمات البرمجية النتائج المتوقعة.