البرمجة

حساب مجموع الأعداد العاملة في JavaScript

لحساب مجموع الأعداد العاملة في جافا سكريبت، نحتاج أولاً إلى كتابة دالة لحساب العاملة (factorial)، ثم نقوم بحساب العاملة للأعداد من 1 إلى n ونقوم بجمع النتائج. إليك كيفية القيام بذلك:

javascript
// دالة لحساب العاملة لعدد محدد function factorial(n) { if (n === 0 || n === 1) { return 1; } else { return n * factorial(n - 1); } } // دالة لحساب مجموع الأعداد العاملة من 1 إلى n function sumFactorials(n) { let sum = 0; for (let i = 1; i <= n; i++) { sum += factorial(i); } return sum; } // اختبار الدالة بعض الأعداد console.log(sumFactorials(3)); // 1! + 2! + 3! = 1 + 2 + 6 = 9 console.log(sumFactorials(5)); // 1! + 2! + 3! + 4! + 5! = 1 + 2 + 6 + 24 + 120 = 153

يمكنك تغيير قيمة n في الدالة sumFactorials لحساب مجموع الأعداد العاملة لأي عدد تريده.

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

بالتأكيد! لدينا الآن دالة factorial(n) التي تقوم بحساب عامل العدد n، ولدينا أيضًا دالة sumFactorials(n) التي تقوم بحساب مجموع الأعداد العاملة من 1 إلى n.

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

javascript
// مصفوفة لتخزين قيم العوامل التي تم حسابها بالفعل let factorials = [1]; // دالة لحساب العاملة لعدد محدد function factorial(n) { if (factorials[n] !== undefined) { return factorials[n]; } let result = n * factorial(n - 1); factorials[n] = result; return result; } // دالة لحساب مجموع الأعداد العاملة من 1 إلى n function sumFactorials(n) { let sum = 0; for (let i = 1; i <= n; i++) { sum += factorial(i); } return sum; } // اختبار الدالة بعض الأعداد console.log(sumFactorials(3)); // 1! + 2! + 3! = 1 + 2 + 6 = 9 console.log(sumFactorials(5)); // 1! + 2! + 3! + 4! + 5! = 1 + 2 + 6 + 24 + 120 = 153

باستخدام هذا التحسين، ستقوم الدالة factorial(n) بحساب قيم العوامل مرة واحدة فقط لكل عدد، ثم تقوم بتخزينها في المصفوفة لإعادة استخدامها فيما بعد، مما يزيد من كفاءة الكود.

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