الدرس التاسع(100):مثال تطبيقي-مضروب العدد


في الدروس السابقة أخذنا كما من المعلومات يكفينا للبدء بحل بعض المشاكل الرياضياتية البسيطة و لكنها مفيدة جدا و ممتعة...
ملاحظة:هذا الدرس هو تحضير للدرس القادم
في علم اﻹحصاء عند حساب اﻹحتماﻻت نضطر في العديد من اﻷحيان إلى حساب ما يسمى بمضروب العدد،ما هو مضروب العدد؟
لنأخذ مثاﻻ بسيطا حتى نفهم،لحساب مضروب العدد 4 سنقوم بضرب 4 في العدد اﻷقل منه و هو 3 و الناتج نضربه في الرقم اﻷقل و هو 2 ثم الناتج نضربه في 1 و ننهي العملية ﻷن ضرب أي عدد في 0 سيعطينا صفرا و بالتالي لن نستفيد شيئا...يرمز لمضروب العدد 4 بالرمز التالي !4

لنقم بترجمة الكلام السابق إلى صيغة رياضياتية:
4! = 4 x 3 x 2 x 1 = 24
هل وصلت فكرة مضروب العدد؟سنستخدم نفس الطريقة بالنسبة للأعداد اﻷخرى،لنأخذ أمثلة أخرى
10! = 10 x 9 x 8 x 7 x 6 x 5 x 4 x 3 x 2 x 1 
لنقم اﻵن ببناء الصيغة الرياضياتية العامة لمضروب العدد n بالنظر إلى المثالين السابقين:
n! = n x (n-1) x (n-2) x (n-3) x....3 x 2 x 1
هته هي الصيغة العامة لمضروب أي عدد بحيث ننقص واحدا في كل مرة و نضرب العدد الجديد في حاصل العملية السابقة...العملية ممتعة و مملة في نفس الوقت خصوصا إن كان العدد كبيرا...لقد تعلنا بأن البرمجة جاءت لتسهيل العمليات المملة،إذن لنكتب برنامجا بسيطا ليقوم بحساب مضروب الأعداد 

كود بسيط جدا أليس كذلك؟
1- إستقبلنا مدخلات المستخدم و حولناها إلى أرقام و وضعناها في متغير num
2- قمنا بتعريف متغير جديد n و الذي سيحوي ناتج عمليات الضرب
3- أنشأنا حلقة تكرارية while تعتمد على مدخلات المستخدم(المتغير num) و التي ستتحقق من أن المتغير أكبر أو تساوي الواحد.
4- قمنا بضرب المتغير n في مدخلات المستخدم و حفظ الناتج في المتغير n بمعنى آخر فإن مفسر بايثون سيقوم بضرب قيمة المتغير num(مدخلات المستخدم) في قيمة المتغير n و هي في هذه الحالة تساوى الواحد،حاصل عملية الضرب سيتم وضعها في المتغير n و بالتالي فإن قيمة المتغير ستتغير و تصبح n x num.بعد ذلك سيقوم مفسر البايثون في السطر الخامس بطرح 1 من قيمة المتغير num الذي ﻻ يزال يحوي مدخلات المستخدم و بالتالي ستصبح قيمته كالتالي num = num-1.
بعدها تعود الحلقة التكرارية لتتحقق من المتغير num إن كان أكبر أو تساوي الواحد أم ﻻ،إن لم تكن كذلك ستتوقف الحلقة عن العمل و يتم طباعة حاصل العملية(المتغير n) أما إن كانت أكبر من الواحد فستقوم الحلقة التكرارية بنفس العملية حتى تصل قيمة num إلى 1.
هذه الكتابة num -=1 معناها num = num -1.
و لكن ماذا لو قام المستخدم بإدخال 1 أو 0 كمدخلات،هنا علينا التحقق من المدخلات قبل الدخول في الحلقة التكرارية عن طريق إستخدام الشروط.
تلميح: إن قام المستخدم بإدخال 0 أو 1 علينا أن نقوم بطباعة 1 كمخرجات للعملية بدون الدخول في حلقة تكرارية.
سأترك لكم مهمة كتابة كود التحقق من المدخلات،دمتم بود،سلام

تعليقات