الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

درس - الإحتمالات و أهميتها في البرمجة .

مغلق
بدأه مختار سيد صالح في 3 سبتمبر 2005 · 17 رد · 1,786 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الإحتمالات و اهميتها في البرمجة :

بسم الله الرحمن الرحيم

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

هو نقاش جرى بيني و بين أحد الأشخاص هذا اليوم على المسنجر المهم سوف أبدأ في الموضوع دون مقدمات

علم الإحتمالات في البرمجة :

هو التفكير في كل الحالات التي سيكون البرنامج أمامها عند تنفيذ أمر معيّن و معالجة كل حالة بشكل منسق مع الحالات الاخرى لضمان

عدم حصول أخطاء أبداً .

أمثلة من الحياة العملية :

المثال الأول :

-----------------------

ليكن لدينا صندوق يحتوي على 3 كرات حمراء و كرة بيضاء

آ - لنقم بتجربة سحب كرة من هذا الصندوق ((دون النظر طبعاً))

في هذه الحالة ما هي الإحتمالات الممكنة ؟؟؟؟؟

الجواب :

هناك إحتمالين لا ثالث لهما

1 - ظهور كرة حمراء

2 - ظهور كرة بيضاء

ب - نقوم بسحب كرتين على التتالي ((دون إعادة الكرة المسحوبة للصندوق))

ما هي الإحتمالات الممكنة ؟

الجواب :

هناك ثلاث إحتمالات لا رابع لها :

1 - الأولى حمراء و الثانية بيضاء

2 - الأولى بيضاء و الثانية حمراء

3 - الأولى حمراء و الثانية حمراء

ج - نقوم بسحب كرة ثم نعيدها للصندوق و نقوم بسحب كرة أخرى ما هي الإحتمالات الممكنة ؟

الجواب :

أربع إحتمالات لا خامس لها

1 - الكرة الأولى حمراء و الثانية حمراء

2 - الكرة الأولى بيضاء و الثانية حمراء

3 - الكرة الأولى حمراء و الثانية بيضاء

4 - الكرة الأولى بيضاء و الثانية بيضاء

-------------------------------------------------------------------

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

((إحتمالين لا ثالث لهما - ثلاثة لا رابع لها - أربعة لا خامس لها ........ ))

يعني بديهياً : نريد أن تعالج كل الحالات الممكنة دون ترك أي حالة .

و الله الكلام لحد الآن كثير حلو ...... ما فائدة هذا الكلام في البرمجة ؟؟

الكلام السابق له كل الفائدة في البرمجة .. و سوف أعطيك مثال صاروخي تفهم العملية .

مثال برمجي صاروخي :

قمنا بإنشاء برنامج يدخل المستخدم فيه رقمين صحيحين A , B و يكون الرقم الثالث C هو عبارة عن A+B ما هي حالات العدد C الممكنة ؟

1 - أن يكون C زوجي

2 - أن يكون C فردي

س : متى يكون C زوجي ؟

ج :

1 - إذا كان A زوجي و كان B زوجي

2 - إذا كان A فردي و كان B فردي

قاعدة ذهبية لكل مبرمج :

إن مستخدم برنامجك من أكثر الناس الذين لا يجيدون التعامل مع الحاسوب و توقع منه كل شيء . ((إفرض أن المستخدم غبي جداً))

لذلك عليك دراسة كل الإحتمالات الممكنة التي يقوم بها مستخدم برنامجك و وضع الاوامر المناسبة لكل إحتمال لتدارك الوضع و عدم إنهيار البرنامج ...

مختار ؟ بلشنا نفوت بالحيط !! شلون يعني المستخدم غبي جداً ؟؟؟؟؟؟؟؟

مثال خنفشاري عن تجربة شخصية :

في بداياتي البرمجة قمت بتصميم برنامج دليل هاتف بسيط و كان فيه أمر بحث عن رقم هاتف معيّن

الأخ المستخدم جزاه الله خيراً بدل أن يضع رقماً في خانة رقم الهاتف وضع حروف و رموز أخرى ....

طبعاً قد لا يحدث مشكلة فور إضافة البيانات

لكن في عمليات البحث و عمليات الفرز ..... و .... و ..... و ...... ستكون الأخطاء كبيرة و سيكون هناك كارثة

لم أنتبه لهذه النقطة .....لكن عندما بدأت أفهم الإحتمالات

قُلت إفرض إن المستخدم وضع حروف في خانة الأرقام ؟

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

خباثة ؟ نعم قد يكون هناك شخص له مصلحة في إفشال برنامجك أمام الآخرين لكي يعتبروك مبرمج فاشل

الآن انا فعلاً فتت بالحيط و لم يعد بإمكاني المتابعة

تفضلوا هذا الدرس ولا تواخذوني .....

يتبع في حلقات قادمة .

لا تنسونا من دعوة صالحة في ظهر الغيب ...

أخوكم : مختار سيد صالح

#2

مشكور ااخي مختار على هذا الدرس المهم والجميل

ولكن لي ملاحظتين :

1. للاسف في البرمجة لا يمكنك التنبوأ بجميع الاحتمالات الواردة 100% دائما فهنالك مشاكل قد تحصل لا تخطر في البال.

2.

اقتباس
مختار ؟ بلشنا نفوت بالحيط !! شلون يعني المستخدم غبي جداً ؟؟؟؟؟؟؟؟

الافضل ان نقول جاهل وليس غبي .

لانه ليس هنالك من يعلم كل شيئ فهو يمكن ان يكزن متخصص في مجال بعيد عن الكمبيوتر

والسلام

من دروسي :

درس مبسط لفهم ال VB6.... Resource File

تعلم تصميم اداة ال Active X خطوة بخطوة (الجزء الأول)

الطريقة المثلى للتعامل مع مسجل النظام( VB6..... (Registry

من برامجي :

Abo Sabreen Messenger v2.1 العملاق

--------------------------------------------------

مفكرة الإسلام؛ طالع أخبار العالم وأخبار المجاهدين بعيدا عن التعتيم الاعلامي.

#3

جزاك الله خيرًا أخي مختار على هذا الدرس المفيد .

سبحان الله وبحمده ... سبحان الله العظيم

#4

مشكوووور على الدرس

تحياتي

#5

اهلاً بالإخوة

أنا لم أقل أنه غبي جداً ؟

قلت إفرض أنه غبي جداً ..... مع كل الإحترام لمستخدمنا الكريم

#6

تابع يا اخي وبالتوفيق إن شاء الله

اقتباس
ولكن لي ملاحظتين :

1. للاسف في البرمجة لا يمكنك التنبوأ بجميع الاحتمالات الواردة 100% دائما فهنالك مشاكل قد تحصل لا تخطر في البال.

2.

اقتباس
مختار ؟ بلشنا نفوت بالحيط !! شلون يعني المستخدم غبي جداً ؟؟؟؟؟؟؟؟

الافضل ان نقول جاهل وليس غبي .

لانه ليس هنالك من يعلم كل شيئ فهو يمكن ان يكزن متخصص في مجال بعيد عن الكمبيوتر

ملاحظات بنائه <_< وفي صلب الموضوع , الرجاء تكرارها باستمرار B)

#7

مشكور على الرد أخي .

#8

أخي العزيز بدون مقدمات

أنا الاّن شغلتي و عملتي الأحتمالات

و إن شاء الله سأصنع برنامج كشف كلمة سر مكونة من ثلاث منازل و ممكن أكثر إن شاء الله

لذالك ممكن النقاش بهذا الموضوع

ملاحظة: كلمة سرك مهما كانت صعبة ستنفك و قد تستغرق شهور عديدة

#9

يبدو أنك تأثرت كثيرا بدروس الجبر في المنهاج؟؟؟

اسم الشركه : mj7.org
صاحب الشركه : محمد جمال الذياب.
أداء الشركـــه : برمجة و تصميم و ادارة المواقع للمنشآت و الافراد
بريد الشركـــه : mj@mj7.org
هاتف الشركه : 00963991354290
الدعم الفنــــي :mjxp7@hotmail.com

#10

اخي

مختار السيد صالح

رقم انك تتحدث عن اهمية البرمجة ولكنك لم تذكر الا امثلة بسيطة فقط عن المستخدم والبرنامج في الحقيقة ان الاحتمالات تدخل حتى في تحليل الخوارزميات

وفي المحاكاة وفي بل وحتى في هناك علوم كاملة (علوم برمجية) قائمة على اساسا مثلا اجبار البرنامج على اختيار الحل الصحيح من بين عدة حلول محتملة

أضاعوني وأي فتى أضاعـوا * * * ليـوم كــريهـة وســـداد ثغــــر

وخـــــلونـي ومعتـرك المنايـا * * * وقد شـــرعوا أسنــتهم لنحـري

كأني لم أكــــــن فيهـم وسيطـا * * * ولم تك نســبتي في آل عمــرو

أجرر في الجـــوامع كـل يـوم * * * ألا لله مظــــلمتـي وهـصـــري

عسى الملك المجيب لمن دعاه * * * سينجيني فيعلم كيــف شكـري

فأجـــزي بالكرامـة أهـل ودي * * * وأجزي بالضـغينة أهل ضري

منتديات الرياضيات العربية

#11
اقتباس
اخي

مختار السيد صالح

رقم انك تتحدث عن اهمية البرمجة ولكنك لم تذكر الا امثلة بسيطة فقط عن المستخدم والبرنامج في الحقيقة ان الاحتمالات تدخل حتى في تحليل الخوارزميات

وفي المحاكاة وفي بل وحتى في هناك علوم كاملة (علوم برمجية) قائمة على اساسا مثلا اجبار البرنامج على اختيار الحل الصحيح من بين عدة حلول محتملة

هذا الكلام الصواب

و بالأضافة إلى ذلك برامج الهاكرز المبنية على ذلك.

اقتباس
يبدو أنك تأثرت كثيرا بدروس الجبر في المنهاج؟؟؟

مقبولة منك إذا كانت مزحة

لكن أخي يعني شو أنت مالك مصدقني مثلاً

#12

أهلاً بالإخوة و شكراً للتفاعل .... العفو الأخ Mjxp7 كان يكلمني أنا و هو صديق لي و معرفة شخصية أعتز بها ...

كان يتكلم عن منهاج البكلوريا

#13

مشكور اخ مختار على الدرس

VB.NET and C# Comparison

http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

002.gif

=-=-=-=-=-=-=
ذو العلم يشقى فى النعيم بعلمه .:. واخو الجهالة فى الشقاوة ينعم
=-=-=-=-=-=-=
يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل
=-=-=-=-=-=-=
ان لم تستطع ان تجد ما تفعله فافعل ما لم تسطع ان تجده

screen_shot_2011-05-19_at_12.44.49_pm.pn

#14

عفواً مالي قاصد أعتذر منكما لكن الحق عليك يا أخي العزيز ليش ماتذكر أسم الي بتكلم أوقعتني بموقف حرج

لا حول و لا قوة إلا بالله

أكرر أعتزاري

#15

و لا يهمك اخي

#16

(h) (h) (h) (h)

أرج أن يفيدكم الملف المرفق مع العلم أني جلست حوالي عشر دقائق متواصلة وأنا أعمل عليه

وكل الأكواد الموجودة من برمجتي شخصيا وغير منقولة لذا قد تجدون صعوبة فيها

على كل أن مستعد لأي سؤال

A.zip

اسم الشركه : mj7.org
صاحب الشركه : محمد جمال الذياب.
أداء الشركـــه : برمجة و تصميم و ادارة المواقع للمنشآت و الافراد
بريد الشركـــه : mj@mj7.org
هاتف الشركه : 00963991354290
الدعم الفنــــي :mjxp7@hotmail.com

#17

أخي الكريم يعطيك العافة لكن

البرنامج بسيط جداً

و ليس بحاجة بالأستعانة ببرمجة خارجية

#18

يعطيك العافية أبو جمال على البرنامج

لكن تعرف

كان ممكن تستعمل دوال مبيتة في الفيجوال أسهل و افضل

مثل

isnumeric , أو isdate .... و هكذا

هذا الموضوع مغلق.

مواضيع مشابهة