البرمجة

تحسين كود جمع الأرقام في C# بفعالية

في الواقع، يمكنك تحسين الكود الخاص بك للحصول على مجموع الأرقام في المصفوفة التي لا تتجاوز القيمة 1002 بطريقة أكثر فعالية. يبدو أن الكود الحالي يستخدم Skip و Take لتحديد نطاق من العناصر قبل حساب المجموع. ومع ذلك، يمكنك القيام بذلك بطريقة أكثر تبسيطًا وفعالية.

فيما يلي كود محسن يحقق نفس الغرض:

csharp
List<int> list = new List<int> { 4, 900, 500, 498, 4 }; int sum = 0; foreach (var number in list) { if (sum + number <= 1002) { sum += number; } else { break; } } Console.WriteLine(sum); Console.ReadLine();

هذا الكود يقوم بتكرار العناصر في المصفوفة ويضيف كل عنصر إلى المجموع فقط إذا كان المجموع الكلي (sum) بعد إضافة هذا العنصر لا يتجاوز القيمة 1002. إذا تم تجاوز هذه القيمة، يتوقف البرنامج عن إضافة المزيد من الأرقام ويقوم بطباعة المجموع النهائي.

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

المزيد من المعلومات

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

عند تطوير برامج يهمنا دائمًا تحقيق الكفاءة والفعالية في الأداء. في الكود الحالي، يتم استخدام حلقة تكرار لتفحص كل عنصر في المصفوفة. يمكن أيضاً استخدام ميزة لغة C# المتقدمة لتحقيق نفس الهدف بطريقة أقل معقدة.

على سبيل المثال، يمكننا استخدام LINQ للقيام بنفس العملية بشكل أكثر إيجازًا:

csharp
List<int> list = new List<int> { 4, 900, 500, 498, 4 }; int sum = list.TakeWhile((number, index) => list.Take(index + 1).Sum() <= 1002).Sum(); Console.WriteLine(sum); Console.ReadLine();

هنا، يتم استخدام TakeWhile لاستمرار اختيار العناصر من المصفوفة حتى يتم تجاوز المجموع الكلي للقيمة 1002. ثم يتم حساب المجموع باستخدام Sum. هذا يقلل من عدد السطور ويجعل الكود أكثر تكاملًا وإيجازًا.

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

زر الذهاب إلى الأعلى