‏إظهار الرسائل ذات التسميات خوارزميات. إظهار كافة الرسائل
‏إظهار الرسائل ذات التسميات خوارزميات. إظهار كافة الرسائل
العمليات الحسابية في النظام الثنائي

العمليات الحسابية في النظام الثنائي


أ‌.    الجمع الثنائي
تشبه عملية الجمع في النظام الثنائي عملية الجمع في النظام العشري مع مراعاة خاصية التبديل والقواعد التالية :
0 + 0 = 0
0 + 1 = 1
1 + 1 = 10
1 +1 + 1 = 11

إليك الأمثلة التالية مع شرحها:

1 . ما هي قيمة جمع العددين الثنائيين التاليين 11 + 11 ؟
http://www.abahe.co.uk/encyclopedia-images/computer-maths/image007.gif

وبالتالي 11 + 11 = 110

2 . ما هي قيمة جمع العددين الثنائيين التاليين: 11 + 111 ؟
http://www.abahe.co.uk/encyclopedia-images/computer-maths/image009.jpg

وبالتالي 11 + 111 = 1010

3 . ما هي قيمة جمع العددين الثنائيين التاليين: 110 + 100 ؟
http://www.abahe.co.uk/encyclopedia-images/computer-maths/image011.jpg

وبالتالي 110 + 100 = 1010


ب‌.    الطرح الثنائي

تشبه عملية الطرح في النظام الثنائي عملية الطرح في النظام العشري مع مراعاة القواعد الأساسية التالية :

0 – 0 = 0
1 – 1 = 0
1 – 0 = 1
10 – 1 = 1   

إليك الأمثلة التالية :

1.    ما هي قيمة طرح العددين الثنائيين التاليين 11 – 10 ؟

بما أنّ: 1 – 0 = 1 وكذلك 1 – 1 = 0 فإن 11 – 10 = 01 كما هو مبيّن بالشكل:
http://www.abahe.co.uk/encyclopedia-images/computer-maths/image013.jpg

2.    ما هي قيمة طرح العددين الثنائيين التاليين 101 – 11 ؟
بما أنّ: 1 – 1 = 0 و 0 – 1 = 1 مع الاحتفاظ بـ 1 فوق فإنّ 101 – 11 = 010 كما هو مبيّن بالشكل التالي :
http://www.abahe.co.uk/encyclopedia-images/computer-maths/image015.jpg

3 . ما هي قيمة طرح العددين الثنائيين التاليين 101 – 100 ؟
http://www.abahe.co.uk/encyclopedia-images/computer-maths/image017.gif

               وبالتالي  101 – 100 = 001



ج. الضرب الثنائي

تشبه عملية الضرب في النظام الثنائي عملية الضرب في النظام العشري مع مراعاة القواعد الأساسية التالية:
0 × 0 = 0
0 × 1 = 0
1 × 0 = 0
1 × 1 = 1


 إليك الأمثلة التالية :

1)    ما هو ناتج ضرب العددين الثنائيين التاليين : 1 1 × 1 1 ؟

لاحظ أن مبدأ الضرب هو نفسه المتبع في الأعداد العشرية حيث يضرب العدد الأول بالعددين الموجودان فوق ثم يضرب العدد الثاني كذلك بالعددين الموجودان 
فوق كما في المثال التالي:
http://www.abahe.co.uk/encyclopedia-images/computer-maths/image021.gif  http://www.abahe.co.uk/encyclopedia-images/computer-maths/image019.gif   

2)    ما هو ناتج ضرب العددين الثنائيين التاليين : 111 × 101 ؟
http://www.abahe.co.uk/encyclopedia-images/computer-maths/image023.jpg 


بإجراء عملية ضرب مشابهة للنظام العشري نجد أنفسنا أمام شكل يشبه الشكل السابق غير أن عملية الضرب تجري فقط على الوحدات 1 والأصفار 0 باتباع قواعد الضرب الثنائي أي 0 × 0 = 0 ، 0 × 1 = 0 ، 1 × 0 = 0 ، 1 × 1 = 1

ج. القسمة الثنائية

تشبه عملية القسمة في النظام الثنائي عملية القسمة في النظام العشري وبالمبدأ نفسه، إليك الأمثلة التالية التي توضح هذه العمليات:
1)    ما هو ناتج قسمة 110 ÷ 10 ؟
http://www.abahe.co.uk/encyclopedia-images/computer-maths/image025.gif

2)    ما هو ناتج قسمة 11101 ÷ 10 ؟
 http://www.abahe.co.uk/encyclopedia-images/computer-maths/image027.gif







وكما ترى في الأمثلة السابقة فإن عملية قسمة عدد ثنائي تشبه إلى حد كبير عملية القسمة في النظام  العشري.

مدخل الي الخوارزميات



بعد ما عرفنا ماهي الخورزميات ومصادرها وشروط كتابتها في المقال 
ناتي اليوم لنعرف   لماذا تعد دراسة الخوارزميات عملية هامة في تعلم البرمجة؟
 ما هو دور الخوارزمية بالنسبة للتقنيات الأخرى المستخدمة في مجال الحواسيب؟
في هذا الموضوع سنحاول الإجابة على هذه التساؤلات…
قبل الخوض في التفاصيل فإن كثير من المبرمجين يعتقدون أن البرمجية هي إتقان لغة برمجة … وهذا طبعاً غير صحيح. فمن وجهة نظر برمجية تعتبر لغة البرمجة أداة تنفيذ الخوارزميات فقط لا غير.
فإن تمكن المبرمج من إتقان الخوارزميات .. يصبح من السهل عليه تطوير تطبيقات متقدمة بلغات برمجية مختلفة.
الخوارزمية: بشكل عام، يمكننا تعريف الخوارزمية بأنّها أي سلسلة من الخطوات الحسابية المعرفة بشكل جيد، والتي تأخذ قيمة أو أكثر كـدخل Input، وتعطي قيمة أو أكثر كـخرج Output.  

بهذا المفهموم فإن الخوارزمية عبارة عن أداة لحل المسائل الحسابية. ونقصد بكلمة مسألة : العلاقة بين الدخل والخرج، وبالتالي فإن دور الخوارزمية توضيح الخطوات الضرورية للوصول إلى العلاقة المطلوبة، وعادةً ما تسمى قيم الدخل التي يتم اختبار الخوارزمية عليها بـ Instance.
لتوضيح المفاهيم السابقة نأخذ المثال التالي:
لنفترض أنه لدينا سلسلة من الأعداد الصحيحة ونريد ترتيبها تنازلياً فعندئذٍ:
المسألة: ترتيب تنازلي للأعداد الصحيحة.
الدخل: سلسلة من الأعداد عددها n.
الخرج: سلسلة الدخل مرتبة تنازلياً.
Insatnce: بفرض سلسلة الدخل هي <10,5,30,15,40> فإن سلسلة الخرج هي <5,10,15,30,40>.
أخذنا عملية الترتيب كمثال توضيحي لأهميتها الكبيرة في كثير من التطبيقات، وتمَّ تطوير عدد كبير من خوارزميات الترتيب والتي سنتطرق لها بالشرح والتحليل في مواضيع لاحقة.
بشكل عام، فإنّ أي مسألة حسابية ليس لها حل وحيد وحسب، وإنما عدد لا نهائي من الحلول، بمعنى أنّه يوجد لدينا عدد لا بأس به من الخورزميات، فكيف نختار الخوارزمية المناسبة للتطبيق؟
يتم الاختيار بحيث نحقق استغلالاً أمثلياًّ لموارد الحاسوب، فما هي هذه الموارد؟
أهم هذه الموارد هي: زمن المعالجة وحجم الذاكرة اللازمة لتنفيذ الخوارزمية.
بشكل عام يُفضّل أن يكون كل من زمن المعالجة وحجم الذاكرة المستهلكة أصغر ما يمكن، فنختار الخوارزمية التي تحقق أحد الشرطين السابقين على الأقل.
تدخل الخوازميات في تطبيقات كثيرة متنوعة وغاية في الأهمية، نسرد فيما يلي بعضها:
* الخارطة الجينية للإنسان Human Genome Project: يهدف هذا المشروع إلى تحديد أكثر من 100000 جين وراثي تُشكل الحمض النووي DNA، بالإضافة إلى تحديد ما يقارب 3 مليارات من الأزواج الكيميائية التي تكوِّن السلسلة الوراثية. إذاً، لدينا كم هائل من البيانات نحتاج لتخزينها ومعالجتها، وهنا يأتي دور الخوارزميات في تطوير تطبيقات وأدوات تحليل تُمكِّن العلماء من إجراء دراسات معمقة في زمن قصير نسبياً.
* تصفح الانترنت Internet Surfing: في وقتنا الحالي يوجد عدد كبير من مستخدمي شبكة الإنترنت، وهم يحصلون في كل لحظة على كم كبير جداً من المعلومات…. فكيف يتم تأمين دخول هذا العدد الكبير من الزبائن وتأمين المعلومات لهم.. لهذا الغرض تمَّ تطوير ما يسمى بالخوارزميات الذكية، تلك المسؤولة عن عملية تخزين وتحصيل المعلومات بشكل سريع، وكمثال على هذه الخوارزميات: خوارزميات البحث المتوفرة ضمن محركات البحث وأشهرها محرك بحث Google.
* التجارة الإلكترونية Electronic Commerce: تؤمِّن مجموعة من الخدمات الجيدة القابلة للتفاوض والتبادل بشكل إلكتروني، فرضت هذه الخدمات تأمين حماية بعض المعلومات الشخصية مثل: اسم المستخدم، كلمة المرور، رقم بطاقة الائتمان، الحسابات المصرفية وغيرها… مما أدى إلى تطوير خوارزميات التشفير والتوقيع الرقمي Digital Signature.
* أشهر الأمثلة: لنفترض أنه توجد لدينا خارطة لمدينة مع وضع المسافات بين التقاطعات، ونريد إيجاد أقصر طريق بين موقعين في هذه المدينة، فكيف يتم ذلك؟ يتم ذلك باستعمال خوارزمية ديجيكسترا الشهيرة… وكانت هذه مقدمة سريعة لعلم الخوارزميات وفي مواضيع لاحقة تفاصيل أكثر، وللحديث بقية…

تعلم الخوارزميات

ماهي الخوارزمية :-

هي مجموعة من الخطوات المتسلسلة والمرتبة والتي تصف حل المسألة بشكل تفصيلي .

مصدر كلمة خوارزمية 

نسبة إلى العالم العربي أبو جعفر محمد بن موسى الخوارزمي ، مكتشف الصفر ، وهو من علماء الرياضيات وله الكثير من المؤلفات أشهرها كتاب الجبر والمقابلة 

ماهي شروط كتابة الخوارزمية Sadمهمة جدا ) ركزوا يا شباب رجاء
1- الخوارزمية لها بداية ونهاية .
2- الخوارزمية يمكن كتابتها بأي لغة . ( عربية ، انجليزية ،.....)
3- يراعى عند كتابة الخوارزمية أن تكون مختصرة أقصى ما يمكن .
4- يجب ترقيم كل خطوة في الخوارزمية ، حيث أن الرقم 1 هو الذي يمثل أول خطوة في الحل وهي البداية .
5- يستحسن كتابة المتغيرات في الخوارزمية باللغة الانجليزية أن أمكن ذلك .
6- يفضل كتابة العمليات الحسابية والمنطقية بنفس طريقة كتابتها في البرنامج إن أمكن ذلك .
7- كلما كان الحل يحتوي على خطوات أقل ، كلما كانت ذلك أفضل.
8- استخدم أقل عدد ممكن من الخطوات وأقل عدد من المتغيرات للوصول إلى الحل .
9- آخر خطوة في الخوارزمية هي النهاية وتمثل نهاية حل المسألة .
10- هناك عدد لا نهائي من الحلول لاي مسالة ، ولكن كلما كان الحل عدد خطوات الحل أقل كان ذلك أفضل .

مثال : أكتب خوارزمية لإيجاد مجموع عددين A,B وتخزين الناتج في المتغير C

الحــــــــــــــــــــل :-


1- البداية 
2- أدخل قيمة A ,B
3- احسب C=A+B
4- اطبع C
5- النهاية 


شرح الخوارزمية :-

1- البداية ------> تمثل بداية الخوارزمية أو بداية الحل للمسألة 
2- أدخل قيمة A,B ------> في هذه الخطوة يتم الطلب من المستخدم أن يقوم بإدخال قيمة للمتغير العددي A والمتغير العددي B
3- احسب C=A+B ------> يتم جمع قيمة المتغيرين A,B وتخزين الناتج في المتغير C ، هذه العملية تسمى عملية الاسناد إو التخصيص
4- أطبع C ------> ويتم هنا طباعة المتغير C حيث أن المتغير C يمثل ناتج عملية الجمع للعملية الحسابية C=A+B
5- النهاية ------> وتمثل نهاية الحل للمسألة أو الخوارزمية ، وعندها تتنتهي الخوارزمية

مثال (2) :- أكتب خوارزمية لحساب مساحة المستطيل .
يجب معرفة قانون مساحة المستطيل قبل بداية الحل
حيث أن مساحة المستطيل = الطول * العرض

خوارزمية الحل :-

1- البداية 
2- أدخل الطول L
3 - أدخل العرض W
4 - احسب A=L*w
5 - اطبع A
6 - النهاية 


مثال (3) :-اكتب خوارزمية لحساب المتوسط الحسابي لثلاثة أعداد
في البداية يجب أن نعرف قانون المتوسط الحسابي حتى نستطيع إيجاد الحل للمسألة 
حيث أن المتوسط الحسابي = مجموع الاعداد على عددها

خوارزمية الحل :-

1- البداية 
2- ادخل قيم X1,X2,X3
3- احسب AVG=(X1+X2+X3)/3
4- اطبع AVG
5- النهاية 

وهذه اشكال الخوارزمية 


نموذج الاتصال

الاسم

بريد إلكتروني *

رسالة *