_22Mohamed نشر 7 مارس 2021 أرسل تقرير نشر 7 مارس 2021 أكتب دالة يمكن تمرير قيمة لها هذه القيمة عبارة مصفوفة من الاعداد الصحيحة ثم تقوم بإرجاع مجموع أكبر ثلاث اعداد بالمصفوفة. قم باستخدام التعريف التالي للدالة : اقتباس
1 سمير عبود نشر 7 مارس 2021 أرسل تقرير نشر 7 مارس 2021 في لغة بايثون لجمع عناصر مصفوفة نستخدم الدالة sum: print(sum([1, 2, 3])) # 6 لترتيب عناصر مصفوفة نستخدم الدالة sorted: print(sorted([11, 2, 1, 9, 7])) # [1, 2, 7, 9, 11] الدالة sorted تُرتب تصاعدياً لقلب الترتيب نستخدم الدالة sorted و نُمرر لها مُعامل آخر: print(sorted([11, 2, 1, 9, 7], reverse=True)) # [11, 9, 7, 2, 1] لأخذ قطعة من مصفوفة نستخدم slice كما هو موضح أدناه: a[start:stop] # نُحدد البداية و النهاية مثلاً: print([11, 2, 1, 9, 7][0:3]) # [11, 2, 1] إجمع كل هذه النقاط مع بعض للوصول للشيء الذي تُريده أولاً الترتيب بشكل تنازلي ثانياً أخذ قطعة من المصفوفة المرتبة مكونة من 3 أعداد ثم إستعمال الدالة sum. و هذا مثال بسيط: print(sum(sorted([11, 2, 1, 9, 7], reverse=True)[0:3])) # 27 يُمكنك إستخدام هذه المراحل لإنشاء دالة تفعل ما تريد. 1 اقتباس
1 إسلام عبدالعزيز نشر 7 مارس 2021 أرسل تقرير نشر 7 مارس 2021 (معدل) لإيجاد مجموع أكبر 3 أعداد، علينا فعل الآتي: ترتيب المصفوفة ليكون البحث عن أكبر قيم سهل. فصل أكبر 3 قيم لجمعهم، أو عمل For Loop عادية لمدة 3 مرات. أولاً: سنستخدم sort لترتيب المصفوفة من الأكبر للأصغر هكذا: // لاحظ الدالة المعطاه في الداخل لترتيب الأرقام من الأكبر للأصغر [32, 256, 8, 16, 128, 64].sort((a, b) => b - a) والآن سنستخدم splice لقطع أول 3 قيم هكذا: // الرقم 0 يعني أننا سنبدأ القطع من أول عنصر في المصفوفة // والرقم 3 يعني أننا سنتوقف عند العنصر الذي لدية رقم فهرس 3 [32, 256, 8, 16, 128, 64].sort((a, b) => b - a).splice(0, 3); أصبح معنا الآن مصفوفة بها أكبر 3 أرقام. يمكنك عمل For Loop أو reduce. سأقوم بإستخدام reduce هكذا: function sumOfLargestThree(array) { return array .sort((a, b) => b - a) .splice(0, 3) .reduce((total, current) => total + current, 0); } sumOfLargestThree([32, 256, 8, 16, 128, 64]); // => 448 تم التعديل في 7 مارس 2021 بواسطة إسلام عبدالعزيز تعديل المثال اقتباس
السؤال
_22Mohamed
أكتب دالة يمكن تمرير قيمة لها هذه القيمة عبارة مصفوفة من الاعداد الصحيحة ثم تقوم بإرجاع مجموع أكبر ثلاث اعداد بالمصفوفة. قم باستخدام التعريف التالي للدالة :
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.