الشتاء قادم نشر 12 سبتمبر 2015 أرسل تقرير نشر 12 سبتمبر 2015 لدي واجب لكي اكتب برنامج يحسب الــ Factorial للعدد 100 بأستعمال recursion ؟فهل بإمكان أحدكم أن يشرح لي هذا ؟ اقتباس
2 mustafa2016 نشر 12 سبتمبر 2015 أرسل تقرير نشر 12 سبتمبر 2015 recursion في علوم الحاسوب هو طريقة لحل المشاكل التي تحتاج لعدد من instance من نفس العنصر، هذه الطريقة تعمل على استدعاء نفسها للوصول لأقل instance من نفسها لحساب عملية ما، بعبارات اسهل recursion هو مثل لعبة الدمية الروسية، التي كلما فتحتها تجد نسخة اصغر منها بداخلها، مثل هذه . و يجب الوصول لأخر دمية لحل المشكلة .في الواجب الخاص بك، انت تحتاج الى لحساب مضروب العدد 100، و انا متأكد انك تعرف تماما انه يعني 100 * 99 * 98 ..... 3 * 2 * 1و يمكنك حلها ب Loop عادي و لكن بما انه مطلوب منك حلها باستعمال recursion و هي الطريقة الصحيح لحل هذه المشكلة فعليك اولا:1. حساب مضروب 100 و هي عبارة عن 100 مضروبة بمضروب 99 ، اليس كذلك ؟2. حساب مضروب 99 و هي عبارة عن 99 مضروبة بمضروب 98 و تكرر العملية الى ان تصل الى:99. حساب مضروب 2 و هو عبارة عن 2 مضروبة في مضروب واحد و هو يساوي واحد.لذا الان ترجع من الأسفل إلى الأعلى بأخذ مضروب 2 و التعويض عنه في مسألة مضروب 3 لنصل الى مضروب 99 و نعوض به بالخطوة رقم واحد و هنا يكون لدينا الناتج.------الان من الناحية البرمجيةانا لن احل لك المسألة خاصتك و لكن سأكتب السودوكود للدالة:function factorial(n) { if (n<=1) return 1; else return n * factorial(n-1); } 1 اقتباس
السؤال
الشتاء قادم
لدي واجب لكي اكتب برنامج يحسب الــ Factorial للعدد 100 بأستعمال recursion ؟
فهل بإمكان أحدكم أن يشرح لي هذا ؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.