الخوارزميات و المنطق - نظري PDF
Document Details
Uploaded by NicestLily5003
International Technical Female College at Buraydah
هند الشتوي
Tags
Summary
ملخص لمحتوى الخوارزميات والمنطق نظري. يغطي هذا الملف مقدمة عن الحوسبة، والفرق بين الحاسوب والإنسان، وتمثيل البيانات في الحاسوب، والبرمجة ولغاتها، أنواع لغات البرمجة. ويهدف إلى إكساب المتدرب المهارات الأساسية لتحليل المشكلة وتحويلها إلى خوارزمية قابلة للبرمجة.
Full Transcript
KINGDOM OF SAUDI ARABIA اﻟﻤﻤﻠﻜﺔ اﻟﻌﺮﺑﯿﺔ اﻟﺴﻌﻮدﯾﺔ General organization for Technical Education اﻟﻤﺆﺳﺴﺔ اﻟﻌﺎﻣﺔ ﻟﻠﺘﺪرﯾﺐ اﻟﺘﻘﻨﻲ واﻟﻤﮭﻨﻲ Girls Technical College in Buraidah...
KINGDOM OF SAUDI ARABIA اﻟﻤﻤﻠﻜﺔ اﻟﻌﺮﺑﯿﺔ اﻟﺴﻌﻮدﯾﺔ General organization for Technical Education اﻟﻤﺆﺳﺴﺔ اﻟﻌﺎﻣﺔ ﻟﻠﺘﺪرﯾﺐ اﻟﺘﻘﻨﻲ واﻟﻤﮭﻨﻲ Girls Technical College in Buraidah اﻟﻜﻠﯿﺔ اﻟﺘﻘﻨﯿﺔ ﻟﻠﺒﻨﺎت ﺑﺒﺮﯾﺪة اﻟﺨﻮارزﻣﯿﺎت واﻟﻤﻨﻄﻖ ١٠١ﺑﺮﻣﺞ إﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي اﻟﮭﺪف اﻟﻌﺎم ﻣﻦ اﻟﻤﻘﺮر إﻛﺴﺎب اﻟﻤﺘﺪرب اﻟﻤﮭﺎرات اﻷﺳﺎﺳﯿﺔ اﻟﻼزﻣﺔ ﻟﺘﺤﻠﯿﻞ اﻟﻤﺸﻜﻠﺔ وﺗﺤﻮﯾﻠﮭﺎ إﻟﻰ ﺧﻮارزﻣﯿﺔ ﻗﺎﺑﻠﺔ ﻟﻠﺒﺮﻣﺠﺔ. اﻷھ ـﺪاف اﻟﺘﻔﺼــــﯿﻠﯿ ـﺔ ﻟﻠﻤﻘﺮر :أن ﯾﻜﻮن اﻟﻤﺘ ـﺪرب ﻗ ـﺎدر ﻋﻠﻰ أن: ﯾﻤﺜﻞ اﻟﺒﯿﺎﻧﺎت ﻓﻲ اﻟﺤﺎﺳﺐ. ﯾﺤﺪد ﻣﻔﮭﻮم ﻟﻐﺔ اﻟﺒﺮﻣﺠﺔ. ﯾﺤﺪد ﻣﻔﮭﻮم اﻟﺨﻮارزﻣﯿﺔ. ﯾﻔﺮق ﺑﯿﻦ اﻟﺘﻌﺒﯿﺮات واﻟﻌﻤﻠﯿﺎت اﻟﻤﻨﻄﻘﯿﺔ. ﯾﻜﺘﺐ ﺣﻞ اﻟﻤﺴﺄﻟﺔ ﻋﻠﻰ ﺷﻜﻞ ﺗﻌﺒﯿﺮات ﻣﻨﻄﻘﯿﺔ. ﯾﺤﻠﻞ اﻟﻤﺸﻜﻼت Problem Solvingﺑﺎﺳﺘﺨﺪام اﻟﺨﻮارزﻣﯿﺎت. ﯾﺮﺳﻢ ﺧﻄﺔ ﺳﯿﺮ اﻟﺒﺮﻧﺎﻣﺞ اﻟﻤﻨﻄﻘﯿﺔ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 2 اﻟﻔﺼﻞ اﻷول ﻣﻘﺪﻣﺔ ﻋﻦ اﻟﺤﻮﺳﺒﺔ اﻷھﺪاف اﻟﺘﻔﺼﯿﻠﯿﺔ :أن ﯾﻜﻮن اﻟﻤﺘﺪرب ﻗﺎدر ﻋﻠﻰ ﻓﮭﻢ ﻗﯿﺎم اﻟﺤﺎﺳﻮب ﺑﺎﻟﻌﻤﻠﯿﺎت اﻟﻌﻘﻠﯿﺔ. اﻟﻤﻌﻠﻮﻣﺎت واﻟﺒﯿﺎﻧﺎت. اﻟﻔﺮق ﺑﯿﻦ اﻟﺤﺎﺳﻮب واﻻﻧﺴﺎن. ﺗﻤﺜﯿﻞ اﻟﺒﯿﺎﻧﺎت ﻓﻲ اﻟﺤﺎﺳﺐ. اﻟﺒﺮﻣﺠﺔ وﻟﻐﺎﺗﮭﺎ. ﻗﯿﺎم اﻟﺤﺎﺳﺐ ﺑﺎﻟﻌﻤﻠﯿﺎت اﻟﻌﻘﻠﯿﺔ اﻟﺤﻮﺳﺒﺔ ھﻲ اﺳﺘﺨﺪام اﻟﺤﺎﺳﺐ اﻵﻟﻲ ﻓﻲ ﺟﻤﯿﻊ اﻟﻤﺠﺎﻻت ﻹﻧﺠﺎز اﻟﻤﮭﻤﺎت واﻷﻋﻤﺎل. اﻟﺤﺎﺳﺐ اداة آﻟﯿﺔ ﻣﻤﺎﺛﻠﺔ ﻟﻠﻌﻘﻞ اﻟﺒﺸﺮي ﻣﻦ ﺣﯿﺚ اﻟﻤﺒﺪأ ،وﻟﻜﻨﮭﺎ ﺗﻔﻮق ﺑﻘﺪراﺗﮭﺎ وﻛﻔﺎءﺗﮭﺎ اداء اﻟﻌﻘﻞ اﻟﺒﺸﺮي.ﯾُﻌﺪ اﻟﺤﺎﺳﺐ ﻣﻜﺒﺮ او ُﻣﻀﺨﻢ ﻟﻠﻌﻘﻞ اﻟﺒﺸﺮي ﺣﯿﺚ ﯾﻤﻜﻦ ﻷﺟﮭﺰة اﻟﺤﺎﺳﺐ أن ﺗﻌﻤﻞ آﻟﯿﺎ ﻋﻠﻰ أي ﻧﺸﺎط ﻓﻜﺮي ﯾﻤﻜﻦ أن ﯾﻨﺠﺰه اﻻﻧﺴﺎن ﺑﻘﺪرة وﻛﻔﺎءة ﻋﺎﻟﯿﺔ ﺟﺪا ً ﺗﻔﻮق ﻗﺪرة اﻹﻧﺴﺎن.وﻟﺬا أﺻﺒﺢ ھﻨﺎك ﺗﻐﯿﺮا ً ﺟﺬرﯾﺎ ً ﻓﻲ ﻛﯿﻔﯿﺔ ﺣﻞ اﻟﺒﺸﺮ ﻟﻠﻤﺸﺎﻛﻼت ﺑﻤﺨﺘﻠﻒ اﻟﻤﺠﺎﻻت.ﻟﻘﺪ ﻏﯿﺮت اﻟﺤﻮﺳﺒﺔ اﻟﻌﺎﻟﻢ أﻛﺜﺮ ﻣﻦ أي اﺧﺘﺮاع آﺧﺮ ﺧﻼل اﻟﻤﺌﺔ ﻋﺎم اﻟﻤﺎﺿﯿﺔ ،وأﺻﺒﺤﺖ ﺳﺎﺋﺪة ﻓﻲ ﺟﻤﯿﻊ اﻟﻤﺠﺎﻻت واﻷﻋﻤﺎل اﻟﺘﻲ ﯾﺴﻌﻰ ﻹﻧﺠﺎزھﺎ اﻹﻧﺴﺎن. vﯾﺠﺐ ﻋﻠﻰ اﻟﺠﻤﯿﻊ دراﺳﺔ ﻋﻠﻢ اﻟﺤﺎﺳﺐ ﻟﺴﺒﺒﯿﻦ: .1ﯾﻌﺘﻤﺪ اﻟﺤﺎﺿﺮ واﻟﻤﺴﺘﻘﺒﻞ ﻋﻠﻰ اﻟﺤﺎﺳﺐ ﻓﻲ ﻣﻌﻈﻢ اﻟﻤﺠﺎﻻت اﻟﻌﻠﻤﯿﺔ واﻟﻔﻨﯿﺔ ،ﺣﯿﺚ ﯾﺘﻢ اﺳﺘﺨﺪام اﻟﺤﺎﺳﺐ ﻓﻲ اﻧﺠﺎز اﻷﻋﻤﺎل اﻟﻔﻨﯿﺔ ﻣﺜﻞ اﻟﺮﺳﻢ واﻟﻤﻮﺳﯿﻘﻰ ،إﺿﺎﻓﺔ اﻟﻰ اﻟﻜﺜﯿﺮ ﻣﻦ اﻟﻤﺠﺎﻻت اﻟﻌﻠﻤﯿﺔ ﻣﺜﻞ ﺗﺤﻠﯿﻞ اﻟﺒﯿﺎﻧﺎت. .2ﺗﺆدي دراﺳﺔ ﻋﻠﻢ اﻟﺤﺎﺳﺐ ﻋﻠﻰ ﻓﮭﻢ اﻟﻌﻘﻞ اﻟﺒﺸﺮي وﺗﻔﺎﻋﻠﮫ ﻣﮫ اﻟﻌﺎﻟﻢ ﻣﻦ ﺣﻮﻟﮫ. اﻟﻤﻌﻠﻮﻣﺎت واﻟﺒﯿﺎﻧﺎت اﻟﺒﯿﺎﻧﺎت ھﻲ ﻣﺠﻤﻮﻋﺔ ﻣﻦ اﻟﺤﻘﺎﺋﻖ واﻷرﻗﺎم اﻟﺨﺎم اﻟﺘﻲ ﺗﺤﺘﺎج ﻟﻠﻤﻌﺎﻟﺠﺔ ﻻﺳﺘﺨﻼص اﻟﻤﻌﻨﻰ أو اﻟﻤﻌﻠﻮﻣﺎت ﻣﻨﮭﺎ ﻋﺒﺎرة ﻋﻦ ﻛﯿﺎﻧﺎت ﺧﺎم ﻋﻠﻰ ھﯿﺌﺔ أرﻗﺎم ،ﺣﺮوف ،ﻋﺒﺎر ات أو رﻣﻮز )* ،(# ،@ ،/ ،إﺿﺎﻓﺔ اﻟﻰ اﻟﺼﻮر أو اﻟﻤﻘﺎطﻊ اﻟﺼﻮﺗﯿﺔ واﻟﻤﺮﺋﯿﺔ اﻟﺘﻲ ﻻ ﺗﺨﻀﻊ ﻷي ﺳﯿﺎق ﻣﻨﻄﻘﻲ وﻻ ﺗﻌﻄﻲ ﻣﻌﻨﻰ. اﻟﻤﻌﻠﻮﻣﺎت ھﻲ ﺣﻘﺎﺋﻖ ﻣﮭﻤﺔ وﻣﻔﯿﺪة ﯾﺘﻢ اﻟﺤﺼﻮل ﻋﻠﯿﮭﺎ ﻛﻤﺨﺮﺟﺎت ﻧﺘﯿﺠﺔ ﻣﻌﺎﻟﺠﺔ اﻟﺒﯿﺎﻧﺎت اﻟﻤﺪﺧﻠﺔ ﻓﻲ ﺑﺮﻧﺎﻣﺞ ﻣﺎ. ﻈﻤﺔ وﻣﺮﺗﺒﺔ وﻓﻖ ﺳﯿﺎق ﻣﻌﯿﻦ ﺑﺤﯿﺚ ﺗ ُﻌﻄﻲ ﻣﻌﻨﻰ ﻣﻨﻄﻘﻲ ﯾُﻤﻜﻦ ﻓﮭﻤﮫ وﻣﻦ ﺛﻢ ﺗ ُﻌﱠﺮف اﻟﻤﻌﻠﻮﻣﺎت ﻋﻠﻰ أﻧﮭﺎ ﺑﯿﺎﻧﺎت ُﻣﻌَﺪّة وﻣﻨ ﱠ اﺳﺘﺨﺪاﻣﮫ ﻓﻲ ﺣﻞ اﻟﻤﺸﻜﻼت. ﻣﻼﺣﻈﺔ :اﻟﺒﯿﺎﻧﺎت ﻻ ﺗ ُﺸﻜﻞ ﺷﻲء ﻣﺎ ﻟﻢ ﯾﺘﻢ ﻣﻌﺎﻟﺠﺘﮭﺎ وﺗﺮﺗﯿﺒﮭﺎ ﻓﻲ ﺳﯿﺎق ﻣﺤﺪد.وھﻲ ﺗﺤﺘﺎج ﻟﻠﺘﻨﻈﯿﻢ واﻟﻤﻌﺎﻟﺠﺔ ﺑﻄﺮﯾﻘﺔ ﻣﺎ ﻟﺘ ُﺸﻜﻞ اﻟﻤﻌﻠﻮﻣﺎت. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 3 ﻣﺧرﺟﺎت ﻣدﺧﻼت )ﻣﻌﻠوﻣﺎت( ﻣﻌﺎﻟﺟﺔ )اﻟﺑﯾﺎﻧﺎت( اﻟﻔﺮق ﺑﯿﻦ اﻟﺤﺎﺳﻮب واﻻﻧﺴﺎن ﻧﺠﺪ ان اﻟﺤﺎﺳﻮب أﺻﺒﺢ ﯾﺤﻞ ﻣﺤﻞ اﻹﻧﺴﺎن ﻓﻲ اﻟﻌﺪﯾﺪ ﻣﻦ اﻟﻮظﺎﺋﻒ ،ﺳﻮاء ﺑﺴﺒﺐ ﺧﻄﻮرة ھﺬه اﻟﻮظﺎﺋﻒ أو ﻷﺳﺒﺎب ﻗﻠﺔ اﻟﺘﻜﻠﻔﺔ وﻏﯿﺮھﺎ ﻣﻦ اﻷﺳﺒﺎب اﻟﻮاردة ﻓﻲ اﻟﺠﺪول ادﻧﺎه. اﻟﺤﺎﺳﻮب اﻹﻧﺴﺎن ﯾﻨﻔّﺬ اﻟﻤﻌﻠﻮﻣﺎت اﻟﻤﻄﻠﻮﺑﺔ ﻣﻨﮫ ﺑﺴﺮﻋٍﺔ ﻛﺒﯿﺮٍة ﺟﺪًا. ﯾﻨﻔّﺬ ﻋﻘﻞ اﻹﻧﺴﺎن اﻟﻌﻤﻠﯿﺎت ﺑﺴﺮﻋٍﺔ أﻗﻞ ﻣﻦ اﻟﺤﺎﺳﻮب. ﯾﺘﻤﯿّﺰ ﺑﺪﻗّﺔ أداﺋﮫ ﻟﻠﻮظﺎﺋﻒ اﻟﻤﻄﻠﻮﺑﺔ ﻣﻨﮫ ،وﻗﺪرﺗﮫ ﻋﻠﻰ ﻻ ﯾﻤﻜﻦ أن ﯾﺼﻞ اﻹﻧﺴﺎن ﻟﺪﻗّﺔ ﺟﮭﺎز اﻟﺤﺎﺳﻮب. اﻟﺘﻮاﺟﺪ ﻓﻲ اﻟﻈﺮوف اﻟﺨﻄﺮة ،ﻣﺜﻞ :ﻟﻠﺘﺤّﻜﻢ ﻓﻲ اﻟﻤﺮﻛﺒﺎت ﻻ ﯾﻤﻜﻦ اﺳﺘﺨﺪام اﻹﻧﺴﺎن ﺿﻤﻦ اﻟﻈﺮوف اﻟﺴﯿﺌﺔ اﻟﻔﻀﺎﺋﯿّﺔ. ﻛﺎﻹﺷﻌﺎﻋﺎت اﻟﻨﻮوﯾﺔ وﻏﯿﺮھﺎ. ﻻ ﯾﺘﺄﺛ ّﺮ اﻟﺤﺎﺳﻮب ﺑﺎﻟﻤﺠﺘﻤﻊ واﻟﻈﺮوف اﻟﺘﻲ ﺗﺤﯿﻂ ﺑﮫ، ﺻﺔ ﺑﮫ ،ﺣﯿﺚ ﻗﺪ ﯾﺘﺄﺛﺮ اﻹﻧﺴﺎن ﻓﻲ اﻟﻈﺮوف اﻟﻤﺤﯿﻄﺔ اﻟﺨﺎ ّ وﯾﻨﻔّﺬ اﻷﻋﻤﺎل اﻟﻤﻄﻠﻮﺑﺔ ﻣﻨﮫ آﻟﯿًﺎ. ﯾﺘﺄﺛ ّﺮ ﺑﺎﻷﺧﺒﺎر ﻏﯿﺮ اﻟﺴﺎّرة اﻟﺘﻲ ﺗﺆﺛ ّﺮ ﻋﻠﻰ ﻧﻔﺴﯿﺘﮫ. ﯾﻨﻔﺬّ اﻟﺤﺎﺳﻮب اﻷﻋﻤﺎل اﻟﻤﻄﻠﻮﺑﺔ ﻣﻨﮫ دون اﻟﺸﻌﻮر ﺑﺎﻟﻤﻠﻞ ﯾﻘﺪّم اﻹﻧﺴﺎن اﻷﻓﻜﺎر اﻟﺠﺪﯾﺪة داﺋًﻤﺎ. أو اﻟﺘﻌﺐ ،وﯾﻤﺘﺎز ﺑﻘﺼﻮر ﺗﻔﻜﯿﺮه. ﻛﻠﻔﺔ ﺗﻮظﯿﻒ اﻹﻧﺴﺎن ﻣﺮﺗﻔﻌﺔ. ﯾﺘﻤﯿّﺰ ﺑﺎﻧﺨﻔﺎض ﻛﻠﻔﺔ اﺳﺘﺨﺪاﻣﮫ. ذو ﻗﺪرة ﻣﺤﺪدة ﻋﻠﻰ ﺗﺨﺰﯾﻦ وﺣﻔﻆ اﻟﻤﻌﻠﻮﻣﺎت واﻟﺒﯿﺎﻧﺎت. ﯾﺘﻤﯿّﺰ ﺑﻘﺪرﺗﮫ اﻟﻜﺒﯿﺮة ﻋﻠﻰ ﺗﺨﺰﯾﻦ اﻟﻤﻌﻠﻮﻣﺎت اﻟﻤﺨﺘﻠﻔﺔ ﯾُﻄﻠﻖ ﻋﻠﻰ ﻋﻘﻞ اﻹﻧﺴﺎن اﻟﻌﻘﻞ اﻟﻤﻔّﻜﺮ. واﻟﺒﯿﺎﻧﺎت ﺑﻜﻤﯿﺎت ﻛﺒﯿﺮة ﺟﺪšا. ﯾﻄﻠﻖ ﻋﻠﻰ اﻟﻤﻌﺎﻟﺞ اﻟﻤﺴﺘﺨﺪم ﻓﻲ اﻟﺤﺎﺳﻮب اﻟﻌﻘﻞ اﻟﻤﻨﻔّﺬ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 4 ﺗﻤﺜﯿﻞ اﻟﺒﯿﺎﻧﺎت ﻓﻲ اﻟﺤﺎﺳﺐ ﺟﮭﺎز اﻟﺤﺎﺳﺐ ھﻮ ﺟﮭﺎز إﻟﻜﺘﺮوﻧﻲ وﻟﯿﺲ ﻣﯿﻜﺎﻧﯿﻜﻲ أي اﻧﮫ ﯾﺴﺘﺨﺪم اﻟﺘﯿﺎر اﻟﻜﮭﺮﺑﺎﺋﻲ ﻣﻦ أﺟﻞ ﺗﺨﺰﯾﻦ وﻣﻌﺎﻟﺠﺔ اﻟﺒﯿﺎﻧﺎت ﺣﯿﺚ ﯾﻘﻮم ﺑﺎﺳﺘﻘﺒﺎل اﻟﺒﯿﺎﻧﺎت ﻣﻦ ﺧﻼل إﺷﺎرات أو ﻧﺒﻀﺎت ﻛﮭﺮﺑﺎﺋﯿﺔ ،ﺗﻌﺒﺮ اﻟﺒﯿﺎﻧﺎت ﻟﻠﺤﺎﺳﺐ ﻣﻦ ﺧﻼل اﻟﻤﻮﺻﻼت اﻟﻜﮭﺮﺑﺎﺋﯿﺔ )اﻷﺳﻼك( وﻛﻤﺎ ﻧﻌﻠﻢ ﻓﺈن اﻹﺷﺎرة اﻟﻜﮭﺮﺑﺎﺋﯿﺔ ﻟﮭﺎ ﺣﺎﻟﺘﯿﻦ وھﻲ إﻣﺎ وﺟﻮد اﻹﺷﺎرة أو ﻋﺪم وﺟﻮدھﺎ. ﯾﺘﻢ ﺗﻤﺜﯿﻞ اﻟﺒﯿﺎﻧﺎت داﺧﻞ اﻟﺤﺎﺳﺐ ﺑﺎﺳﺘﺨﺪام اﻟﻨﻈﺎم اﻟﺜﻨﺎﺋﻲ ﻣﺘﻤﺜﻞ ﺑﺎﻟﺮﻣﺰﯾﻦ ) (1 ، 0ﺣﯿﺚ ﯾﻤﺜﻞ اﻟﺼﻔﺮ ﺣﺎﻟﺔ ﻋﺪم وﺟﻮد اﻹﺷﺎرة أو ﻛﻮﻧﮭﺎ ﺳﺎﻟﺒﺔ ،ﺑﯿﻨﻤﺎ ﯾﻤﺜﻞ اﻟﺮﻗﻢ ) (1ﺣﺎﻟﺔ وﺟﻮد اﻹﺷﺎرة أو ﻛﻮﻧﮭﺎ ﻣﻮﺟﺒﺔ. ﺗ ُﻌﺪ ﺑﯿﺎﻧﺎت اﻟﺤﺎﺳﺐ ﺑﯿﺎﻧﺎت رﻗﻤﯿﺔ ﺛﻨﺎﺋﯿﺔ ﺑﻤﻌﻨﻰ أﻧﮭﺎ ﺗﻤﺜﻞ ﺑﻘﯿﻤﺘﯿﻦ ﻓﻘﻂ ﯾﻄﻠﻖ ﻋﻠﻰ ﻛﻞ ﻣﻨﮭﺎ رﻗﻢ ﺛﻨﺎﺋﻲ أو ﻛﻠﻤﺔ ﺑﺖ.وﯾﻌﺪ اﻟﺒﺖ أﺻ ﻐﺮ و ﺣ ﺪة ﺑﯿﺎﻧﺎت ﯾﺴ ﺘﻘ ﺒﻠﮭ ﺎ اﻟﺤ ﺎﺳ ﺐ ﻣ ﻦ ﺧ ﻼ ل اﻟﻤ ﻮ ﺻ ﻼ ت اﻟﻜﮭﺮ ﺑﺎﺋﯿﺔ . ﻋﻨﺪ إدﺧﺎل ﻣﻌﻠﻮﻣﺔ ﻟﻠﺤﺎﺳﺐ ﻣﺜﻞ اﻟﻨﺺ أو اﻟﺼﻮرة وﻏﯿﺮھﺎ ﻓﺈﻧﮫ ﻻ ﯾﺪرك ﺗﻠﻚ اﻟﺒﯿﺎﻧﺎت اﻟﺘﻲ ﯾﺘﻌﺎﻣﻞ ﻣﻌﮭﺎ ،ﺣﯿﺚ ﯾﻌﺘﺒﺮ اﻟﺮﻗﻤﯿﻦ )0 (1،اﻟﻮﺣﺪة اﻷﺳﺎﺳﯿﺔ ﻷي ﻣﻌﻠﻮﻣﺔ. ﻣﺜﺎل :ﺗﻤﺜﯿﻞ اﻟﺤﺮوف و اﻷرﻗﺎم ﯾﻤﺜﻞ اﻟﺤﺮف )أ( ﺑﺜﻤﺎﻧﯿﺔ أرﻗﺎم ﺛﻨﺎﺋﯿﺔ ).(11000110 ﯾﻤﺜﻞ اﻟﺮﻗﻢ ) (9ﺑﺴﻠﺴﺔ ﻣﻦ أرﺑﻌﺔ أرﻗﺎم ﺛﻨﺎﺋﯿﺔ ).(1001 اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 5 ﺗﻤﺜﯿﻞ اﻟﺼﻮر ﻓﻲ اﻟﺤﺎﺳﺐ: ﺗﺘﻜﻮن اﻟﺼﻮرة ﻣﻦ ﻣﺠﻤﻮﻋﺔ ﻣﺮﺑﻌﺎت ﺻﻐﯿﺮة ﺗﺴﻤﻰ اﻟﺒﻜﺴﻞ ،ﯾﺘﻢ ﺗﻤﺜﯿﻠﮭﺎ ﺑﺎﻟﺤﺎﺳﻮب ﺑﻤﺠﻤﻮﻋﮫ ﻣﻦ اﻟﺒﺘﺎت ﺑﺤﯿﺚ ﻛﻞ ﺑﺖ ﯾﺮﻣﺰ اﻟﻰ ﻟﻮن ﻣﻌﯿﻦ. ﻣﺜﺎل :ﺗﻤﺜﯿﻞ اﻟﺼﻮر ﯾﺘﻢ ﺗﻤﺜﯿﻞ اﻟﺼﻮرة اﻟﻤﻮﺿﺤﺔ ﺑﺤﯿﺚ اﻟﺒﻜﺴﻞ ذو اﻟﻠﻮن اﻷﺳﻮد= 1و اﻟﺒﻜﺴﻞ ذو اﻟﻠﻮن اﻷﺑﯿﺾ=.0 ﺣﺠﻢ اﻟﺼﻮرة اﻟﻤﻮﺿﺤﺔ 16 ×16ﻟﺬا ﺗﺤﺘﺎج 256ﺑﻜﺴﻞ أي 256ﺑﺖ. وﺣﺪات ﻗﯿﺎس اﻟﺒﯿﺎﻧﺎت ﻓﻲ اﻟﺤﺎﺳﺐ ﯾﺘﻢ ﻗﯿﺎس اﻟﺒﯿﺎﻧﺎت ﻓﻲ اﻟﺤﺎﺳﺐ ﺑﻮﺣﺪات ﻣﺘﻌﺪدة ﻛﻤﺎ ﻧﻘﯿﺲ اﻟﺴﻮاﺋﻞ ﺑﻮﺣﺪة اﻟﻘﯿﺎس ﻟﺘﺮ واﻟﻮزن ﺑﻮﺣﺪة اﻟﻘﯿﺎس اﻟﻜﯿﻠﻮ ﺟﺮام وھﻜﺬا. وﺣﺪات ﻗﯿﺎس اﻟﺬاﻛﺮة: ﺑﺖ ) :(Bitأﺻﻐﺮ وﺣﺪة ﺗﺨﺰﯾﻦ ﻓﻲ اﻟﺤﺎﺳﻮب ﺑﺪاﺧﻞ اﻟﺬاﻛﺮة ھﻲ اﻟﺒﺖ ) (Bitوھﻲ ﺧﻠﯿﺔ ﺛﻨﺎﺋﯿﺔ ﺗﺴﺘﻮﻋﺐ ﻓﻘﻂ اﻣﺎ 0أو 1وﯾﻌﻨﻲ ذﻟﻚ 0 offو .1 on ﺑﺎﯾﺖ ) :(Byteوھﻲ ﺗﺴﺎوي 8ﺑﺖ وﯾﺴﺘﺨﺪم اﻟﺒﺎﯾﺖ ﻟﺘﻤﺜﯿﻞ رﻗﻢ أو ﺣﺮف أو رﻣﺰ. وﺣﺪات ﻗﯿﺎس إﺿﺎﻓﯿﺔ: اﻟﻜﯿﻠﻮﺑﺎﯾﺖ :(KB), Kilo byteوﯾﺴﺎوي 1024ﺑﺎﯾﺖ اﻟﻤﯿﺠﺎﺑﺎﯾﺖ :(MB) Mega byteوﺗﺴﺎوي 1024ﻛﯿﻠﻮﺑﺎﯾﺖ اﻟﺠﯿﺠﺎﺑﺎﯾﺖ :(GB) Giga byteوﺗﺴﺎوي 1024ﻣﯿﺠﺎﺑﺎﯾﺖ اﻟﺘﯿﺮاﺑﺎﯾﺖ :(TB) Tera byteوﺗﺴﺎوي 1024ﺟﯿﺠﺎﺑﺎﯾﺖ اﻟﺒﺮﻣﺠﺔ وﻟﻐﺎﺗﮭﺎ ﯾﺘﻤﯿﺰ اﻟﺤﺎﺳﺐ ﻋﻦ ﺑﻘﯿﺔ اﻷﺟﮭﺰة واﻵﻻت ﺑﺄﻧﮫ اﻵﻟﺔ اﻟﻮﺣﯿﺪة اﻟﺘﻲ ﺗﺘﻠﻘﻰ اﻷواﻣﺮ ﻣﻦ اﻹﻧﺴﺎن وﯾﻤﻜﻦ ﺑﺮﻣﺠﺘﮫ ﻟﯿﻘﻮم ﺑﻤﮭﻤﮫ ﻣﻌﯿﻨﮫ. ﺗﺴﺘﺨﺪم اﻟﻠﻐﺔ اﻟﻌﺮﺑﯿﺔ ﻋﻠﻰ ﺳﺒﯿﻞ اﻟﻤﺜﺎل ﻟﻠﺘﻮاﺻﻞ ﺑﯿﻦ اﻟﻨﺎس ،وﻟﻜﻦ ﻛﯿﻒ ﯾﻤﻜﻦ أن ﯾﺘﻮاﺻﻞ اﻹﻧﺴﺎن ﻣﻊ اﻟﺤﺎﺳﺐ؟ اﻟﺒﺮﻣﺠﺔ ھﻲ اﻟﻮﺳﯿﻠﺔ اﻟﺘﻲ ﺗﺴﻤﺢ ﻟﻺﻧﺴﺎن ان ﯾﺘﻮاﺻﻞ ﻣﻊ اﻟﺤﺎﺳﺐ ﻣﻦ ﺧﻼل ﻛﺘﺎﺑﺔ اﻟﺘﻌﻠﯿﻤﺎت واﻷواﻣﺮ اﻟﺘﻲ ﯾﺘﻮﺟﺐ ﻋﻠﻰ اﻟﺤﺎﺳﺐ ﺗﻨﻔﯿﺬھﺎ.وﯾﺘﻢ ﻛﺘﺎﺑﺔ ھﺬه اﻷواﻣﺮ ﺑﺎﺳﺘﺨﺪام ﻟﻐﺎت ﻣﺘﻌﺪد ﺗﺴﻤﻰ ﻟﻐﺎت اﻟﺒﺮﻣﺠﺔ. ﻟﻐﺔ اﻟﺒﺮﻣﺠﺔ ھﻲ اﻟﻠﻐﺔ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻟﻜﺘﺎﺑﺔ اﻟﺘﻌﻠﯿﻤﺎت واﻷواﻣﺮ ﻣﻦ ِﻗﺒﻞ اﻻﻧﺴﺎن ﺑﺎﺳﺘﺨﺪام ﺷﻔﺮة ﻣﻌﯿﻨﮫ ﯾﺘﻢ ﺗﺮﺟﻤﺘﮭﺎ اﻟﻰ وﻓﮭﻤﮭﺎ وﺗﻨﻔﯿﺬھﺎ ﻣﻦ ِﻗﺒﻞ اﻟﺤﺎﺳﺐ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 6 أﻧﻮاع ﻟﻐﺎت اﻟﺒﺮﻣﺠﺔ ﺗﻨﻘﺴﻢ ﻟﻐﺎت اﻟﺒﺮﻣﺠﺔ اﻟﻰ ﻗﺴﻤﯿﻦ ،ﻟﻐﺎت ﻣﻨﺨﻔﻀﺔ اﻟﻤﺴﺘﻮى وﻟﻐﺎت ﻋﺎﻟﯿﺔ اﻟﻤﺴﺘﻮى.ﻧﺴﺘﻄﯿﻊ اﻟﻘﻮل اﻧﮫ ﻛﻠﻤﺎ ﻛﺎﻧﺖ اﻟﻠﻐﺔ ﻗﺮﯾﺒﺔ ﻣﻦ ﻟﻐﺔ اﻟﺤﺎﺳﻮب )اﻟﻠﻐﺔ اﻟﺜﻨﺎﺋﯿﺔ( ﺗﻜﻮن اﻟﻠﻐﺔ ﻣﻨﺨﻔﻀﺔ اﻟﻤﺴﺘﻮى ،وﻛﻠﻤﺎ ﻛﺎﻧﺖ ﻗﺮﯾﺒﺔ ﻣﻦ ﻟﻐﺔ اﻟﺒﺸﺮ )ﻣﺘﻤﺜﻠﺔ ﺑﺎﻟﻠﻐﺔ اﻹﻧﺠﻠﯿﺰﯾﺔ( ﻛﺎﻧﺖ اﻟﻠﻐﺔ ﻋﺎﻟﯿﺔ اﻟﻤﺴﺘﻮى. ﻟﻐﺎت ﻋﺎﻟﯿﺔ اﻟﻤﺴﺘﻮى ﻟﻐﺎت ﻣﻨﺨﻔﻀﺔ اﻟﻤﺴﺘﻮى ھﻲ ﻟﻐﺎت ﺑﺮﻣﺠﺔ ﻣﺼﻤﻤﺔ ﻟﺘﺒﺴﯿﻂ ﺑﺮﻣﺠﺔ اﻟﺤﺎﺳﺐ ﺣﯿﺚ ھﻲ ﻟﻐﺎت ﺑﺮﻣﺠﺔ ﻣﻜﻮﻧﮫ ﻣﻦ ﺗﻌﻠﯿﻤﺎت وأواﻣﺮ ﺑﺴﯿﻄﺔ ﺗﺤﺘﻮي ﻋﻠﻰ أواﻣﺮ ﻣﻜﺘﻮﺑﺔ ﺑﻠﻐﺔ ﺳﮭﻠﺔ اﻟﻘﺮاءة واﻟﻔﮭﻢ وﻣﺤﺪودة ﯾﻔﮭﻤﮭﺎ اﻟﺤﺎﺳﺐ وﯾﺼﻌﺐ ﻓﮭﻤﮭﺎ ﻋﻠﻰ اﻻﻧﺴﺎن ﻟﻺﻧﺴﺎن وﯾﺘﻢ ﺗﺮﺟﻤﺘﮭﺎ اﻟﻰ ﻟﻐﺎت ﻣﻨﺨﻔﻀﺔ اﻟﻤﺴﺘﻮى ﺣﺘﻰ ﻣﺘﻤﺜﻠﺔ ﺑﺎﻟﺮﻣﻮز واﻷرﻗﺎم اﻟﺜﻨﺎﺋﯿﺔ.. ﯾﻔﮭﻤﮭﺎ اﻟﺤﺎﺳﺐ. ﻣﺜﺎل: ﻣﺜﻞ: ﻟﻐﺔ اﻵﻟﺔ ﻟﻐﺔ ﺳﻲ ﺑﻠﺲ ﺑﻠﺲC++ ﻟﻐﺔ اﻟﺘﺠﻤﯿﻊ ﻟﻐﺔ ﺑﺎﺳﻜﺎل Pascal أﺑﺮز اﻟﻠﻐﺎت اﻟﻤﻨﺨﻔﻀﺔ اﻟﻤﺴﺘﻮى -ﻟﻐﺔ اﻵﻟﺔ: ھﻲ اﻟﻠﻐﺔ اﻟﻮﺣﯿﺪة اﻟﺘﻲ ﺗﺘﻢ ﻣﻌﺎﻟﺠﺘﮭﺎ وﻓﮭﻤﮭﺎ ﻣﻦ ِﻗﺒﻞ اﻟﺤﺎﺳﺐ ﻣﺒﺎﺷﺮة وﻻ ﺗﺤﺘﺎج ﺑﺄن ﺗﺘﻢ ﺗﺮﺟﻤﺘﮭﺎ او ﺗﻔﺴﯿﺮھﺎ ﻟﻠﺤﺎﺳﺐ. وھﻲ ﻣﺠﻤﻮﻋﺔ ﻣﻦ اﻟﺘﻌﻠﯿﻤﺎت اﻟﻤﻜﺘﻮﺑﺔ ﺑﺎﻟﻨﻈﺎم اﻟﺜﻨﺎﺋﻲ ).(1،0 -ﻟﻐﺔ اﻟﺘﺠﻤﯿﻊ: ھﻲ ﻟﻐﺔ ﻣﻨﺨﻔﻀﺔ اﻟﻤﺴﺘﻮى ﻣﺤﺪودة اﻻﺳﺘﺨﺪام وھﻲ ﻣﺼﻤﻤﺔ ﻟﻨﻮع ﻣﻌﯿﻦ ﻣﻦ اﻟﻤﻌﺎﻟﺠﺎت، ﻣﺜﻞ ﻧﻈﺎم ﺗﺤﺪﯾﺪ اﻟﺤﺮﻛﺔ ﻓﻲ ﻛﺎﻣﯿﺮات اﻟﻤﺮاﻗﺒﺔ إﺿﺎﻓﺔ اﻟﻰ اﻷﺟﮭﺰة اﻷﺗﻮﻣﺎﺗﯿﻜﯿﺔ ﻓﻲ اﻟﻤﻨﺎزل اﻟﺬﻛﯿﺔ وﻏﯿﺮھﺎ.ﯾﺘﻢ ﺗﺤﻮﯾﻞ ﻟﻐﺔ اﻟﺘﺠﻤﯿﻊ ﻟﻐﺔ اﻵﻟﺔ ﺑﺎﺳﺘﺨﺪام اﻟﻤﺠﻤﻊ ) (Assemblerﺣﺘﻰ ﯾﺘﻢ ﻓﮭﻤﮭﺎ ﻣﻦ ﻗﺒﻞ اﻟﺤﺎﺳﺐ.ﺗﺘﻢ ﻛﺘﺎﺑﺔ اﻷواﻣﺮ ﺑﮭﺬه اﻟﻠﻐﺔ ﺑﺎﺳﺘﺨﺪام ﻣﻔﺮدات ﻗﺼﯿﺮة ﻣﺨﺘﺼﺮه ﺑﺎﻟﻠﻐﺔ اﻹﻧﺠﻠﯿﺰﯾﺔ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 7 اﻟﻔﺼﻞ اﻟﺜﺎﻧﻲ ﺗﻤﮭﯿﺪات وﻣﺮاﺟﻌﺎت رﯾﺎﺿﯿﺔ اﻷھﺪاف اﻟﺘﻔﺼﯿﻠﯿﺔ :أن ﯾﻜﻮن اﻟﻤﺘﺪرب ﻗﺎدر ﻋﻠﻰ ﻓﮭﻢ اﻟﺘﻌﺒﯿﺮات اﻟﻤﻨﻄﻘﯿﺔ. اﻟﻌﻤﻠﯿﺎت اﻟﻤﻨﻄﻘﯿﺔ. اﻟﻌﻤﻠﯿﺎت اﻟﺤﺴﺎﺑﯿﺔ. طﺮﯾﻘﺔ اﺳﻨﺎد ﻗﯿﻤﺔ ﻟﻤﺠﮭﻮل. اﻟﺘﻌﺒﯿﺮات اﻟﻤﻨﻄﻘﯿﺔ اﻟﺘﻌﺒﯿﺮات اﻟﻤﻨﻄﻘﯿﺔ :ھﻲ ﺟﻤﻠﺔ ﺧﺒﺮﯾﺔ ﺗﻜﻮن إﻣﺎ ﺻﺤﯿﺤﺔ أو ﺧﺎطﺌﺔ ،وﻟﻜﻦ ﻟﯿﺴﺖ ﺻﺤﯿﺤﺔ وﺧﺎطﺌﺔ ﻓﻲ ﻧﻔﺲ اﻟﻮﻗﺖ. اﻟﺘﻌﺒﯿﺮات اﻟﻤﻨﻄﻘﯿﺔ اﻟﺒﺴﯿﻄﺔ واﻟﻤﺮﻛﺒﺔ اﻟﺘﻌﺒﯿﺮات اﻟﻤﻨﻄﻘﯿﺔ اﻟﻤﺮﻛﺒﺔ اﻟﺘﻌﺒﯿﺮات اﻟﻤﻨﻄﻘﯿﺔ اﻟﺒﺴﯿﻄﺔ اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 8 اﻟﻌﻤﻠﯿﺎت اﻟﻤﻨﻄﻘﯿﺔ اﻷﺳﺎﺳﯿﺔ )اﻟﻌﻄﻒ – اﻟﺘﺨﯿﯿﺮ – اﻟﻨﻔﻲ( " " andورﻣزه ∧ : راﺑط اﻟﻌطف )“: (conjunctionو " " " notورﻣزه¬ : راﺑط اﻟﻧﻔﻲ ) "(negationﻏﯾر ﺻﺣﯾﺢ " " " orورﻣﺰه ∨ : راﺑﻂ اﻟﺘﺨﯿﯿﺮ ) " :(disjunctionأو " ﺟﺪول اﻟﺼﺪق ﻟﻠﻌﻤﻠﯿﺎت اﻟﻤﻨﻄﻘﯿﺔ اﻷﺳﺎﺳﻲ )اﻟﻌﻄﻒ – اﻟﺘﺨﯿﯿﺮ – اﻟﻨﻔﻲ( اﻟﻌﻄﻒ و ﯾﺴﺘﺨﺪم اﻟﺮﻣﺰ )⌃( ،ﺗﺼﺒﺢ اﻟﺘﺨﯿﯿﺮ و ﯾﺴﺘﺨﺪم اﻟﺮﻣﺰ )⌵( ،ﺗﺼﺒﺢ اﻟﻨﻔﻲ و ﯾﺴﺘﺨﺪم اﻟﺮﻣﺰ ) ⌝( ، اﻟﻌﺒﺎرة ﺻﺤﯿﺤﺔ ﻓﻲ ﺣﺎل ﻛﺎﻧﺖ ﺟﻤﯿﻊ اﻟﻌﺒﺎرة ﺻﺤﯿﺤﺔ ﻓﻲ ﺣﺎل ﻛﺎﻧﺖ أﺣﺪ ﺗﺼﺒﺢ اﻟﻌﺒﺎرة ﺻﺤﯿﺤﺔ ﻓﻲ ﺣﺎل اﻟﻤﺪﺧﻼت ﺻﺤﯿﺤﺔ. اﻟﻤﺪﺧﻼت ﺻﺤﯿﺤﺔ. ﻛﺎﻧﺖ اﻟﻤﺪﺧﻼت ﺧﺎطﺌﺔ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 9 ﻣﻼﺣﻈﺔ :ﯾﻤﻜﻦ ﺣﺴﺎب ﻋﺪد اﻻﺣﺘﻤﺎﻻت ﻛﺎﻟﺘﺎﻟﻲ: ﻋﺪد اﻻﺣﺘﻤﺎﻻت= ! n ، 2ھﻲ ﻋﺪد اﻟﻤﺘﻐﯿﺮات ﻣﺜﺎل :أوﺟﺪ ﺟﺪول اﻟﺼﺪق ﻟﻠﻌﺒﺎرة اﻟﻤﺮﻛﺒﺔ ): ¬( p∧¬q اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 10 اﻟﺘﻮاﻓﻖ واﻟﺘﻨﺎﻗﺾ اﻟﺘﻮاﻓﻖ اﻟﻤﻨﻄﻘﻲ – اﻟﺘﻨﺎﻗﺾ اﻟﻤﻨﻄﻘﻲ اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 11 اﻟﺘﻜﺎﻓﺆ )اﻟﺘﻜﺎﻓﺆ اﻟﻤﻨﻄﻘﻲ (logically Equivalent أوﻟﻮﯾﺎت اﻟﻌﻤﻠﯿﺎت اﻟﺤﺴﺎﺑﯿﺔ أوﻟﻮﯾﺎت اﻟﻌﻤﻠﯿﺎت اﻟﺤﺴﺎﺑﯿﺔ : -ﯾﺘﻢ اﺣﺘﺴﺎب ﻣﺎ ﺑﺪاﺧﻞ اﻷﻗﻮاس أوﻻ إذا ﻛﺎن ھﻨﺎك أﻗﻮاس. -إذا ﻛﺎن ھﻨﺎك اﻟﻌﺪﯾﺪ ﻣﻦ اﻷﻗﻮاس اﻟﻤﺘﺪاﺧﻠﺔ ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻷﻗﻮاس اﻟﺪاﺧﻠﯿﺔ ﺛﻢ اﻟﺨﺎرﺟﯿﺔ. -ﯾﺄﺗﻲ ﺑﻌﺪ ذﻟﻚ ﻓﻲ اﻷوﻟﻮﯾﺔ اﻟﻀﺮب واﻟﻘﺴﻤﺔ واﻟﺒﺎﻗﻲ )*.(% ، / ، -ﯾﺄﺗﻲ ﺑﻌﺪ ذﻟﻚ اﻟﺠﻤﻊ واﻟﻄﺮح. -ﯾﻜﻮن اﻟﺘﻨﻔﯿﺬ ﻣﻦ اﻟﯿﺴﺎر إﻟﻰ اﻟﯿﻤﯿﻦ ﻓﻲ ﺣﺎل ﺗﺴﺎوت اﻷوﻟﻮﯾﺔ ﺑﯿﻦ اﻟﻌﻤﻠﯿﺎت. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 12 ﺗﺪرﯾﺒﺎت اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 13 اﻟﻔﺼ ﯾﯿﻞﯿﯿﯿاﻲﻟﺜﺎﻟﺚ ﻣﻔﮭﻮم اﻟﺨﻮارزﻣﯿﺎت وﺣﻞ اﻟﻤﺸﺎﻛﻞ ﺑﺒﺐ اﻷھﺪاف اﻟﺘﻔﺼﯿﻠﯿﺔ :أن ﯾﻜﻮن اﻟﻤﺘﺪرب ﻗﺎدر ﻋﻠﻰ ﻓﮭﻢ ﻣﺎھﻲ اﻟﺨﻮارزﻣﯿﺔ. أھﻤﯿﺔ اﻟﺨﻮارزﻣﯿﺎت ﻓﻲ ﻣﺠﺎل اﻟﺤﺎﺳﻮب. اﻟﻌﻼﻗﺔ ﺑﯿﻦ اﻟﺨﻮارزﻣﯿﺎت وﻏﯿﺮھﺎ ﻣﻦ اﻟﻤﺠﺎﻻت ﻓﻲ ﻋﺎﻟﻢ اﻟﺤﺎﺳﻮب. ﺑﺮﻣﺠﺔ ﺗﻄﺒﯿﻘﺎت اﻟﺤﺎﺳﺐ ﺗ ُﻌﺪ ﻋﻠﻤﺎ ً وﻓﻨﺎ ً ﻓﻲ ﻧﻔﺲ اﻟﻮﻗﺖ ،ﺣﯿﺚ ﯾﺤﺮص ﻣﺼﻤﻤﻲ اﻟﺒﺮﻣﺠﯿﺎت ﻋﻠﻰ أﻧﺎﻗﺔ وﺟﻤﺎل اﻟﺘﻄﺒﯿﻘﺎت ﻣﻦ ﻧﺎﺣﯿﺔ وﻋﻤﻠﮭﺎ ﺑﺸﻜﻞ ﺻﺤﯿﺢ وﻓﻌّﺎل ﻣﻦ ﻧﺎﺣﯿﺔ أﺧﺮى.وﯾﺸﻜﻞ ذﻟﻚ ﻗﻠﻖ اﻟﻰ ﺣﺪ ﻣﺎء ﻟﻠﻤﺒﺮﻣﺠﯿﻦ وﻣﺴﺘﺨﺪﻣﯿﻦ اﻟﺘﻄﺒﯿﻘﺎت ،ﺣﯿﺚ ﯾﺮﻏﺐ اﻟﻤﺒﺮﻣﺠﯿﻦ ﺑﺎﻟﺤﻔﺎظ ﻋﻠﻰ اﻷﻧﺎﻗﺔ واﻟﺠﻤﺎل ﻣﻊ اﻟﺼﺤﺔ واﻟﻜﻔﺎءة وﯾﺮﻏﺐ اﻟﻤﺴﺘﺨﺪﻣﯿﻦ ﺑﺎﻟﺪﻗﺔ ،واﻟﻤﻮﺛﻮﻗﯿﺔ ،واﻟﺼﺤﺔ ،اﻟﻰ ﺟﺎﻧﺐ اﻟﻜﻔﺎءة.وﻟﺬا ﯾﺠﺐ ﻋﻠﻰ اﻟﻤﺨﺘﺼﯿﻦ ﺑﻌﻠﻮم اﻟﺤﺎﺳﻮب ﻣﻦ ﻣﮭﻨﺪﺳﯿﻦ وﻣﺒﺮﻣﺠﯿﻦ دراﺳﺔ ﻛﯿﻔﯿﺔ ﻛﺘﺎﺑﺔ اﻟﺒﺮاﻣﺞ ﺑﺎﻟﺼﻮرة اﻟﺘﻲ ﺗﻔﻲ ﺑﺎﻟﻤﺘﻄﻠﺒﺎت اﻷﺳﺎﺳﯿﺔ وﺗ ُﺮﺿﻲ ذاﺋﻘﺔ اﻟﻌﻤﯿﻞ. ﻣﻦ ﺧﻼل اﻟﺒﺮﻣﺠﯿﺎت ﻧﻘﻮم ﺑﺤﻞ اﻟﻌﺪﯾﺪ ﻣﻦ اﻟﻤﺸﻜﻼت ،وﯾﻤﻜﻦ ان ﻧﺠﺪ ﻟﻜﻞ ﻣﺸﻜﻠﺔ ﻋﺪة ﺣﻠﻮل ،وﻟﻜﻦ ﻣﺎ ﯾُﻘﻠﻘﻨﺎ ھﻮ إﯾﺠﺎد اﻟﺤﻞ اﻷﻧﺴﺐ واﻷﻣﺜﻞ ﻟﮭﺬه اﻟﻤﺸﻜﻠﺔ.ﻓﻲ ھﺬا اﻟﻔﺼﻞ ﺳﻨُﻨﺎﻗﺶ ﻣﻮاﺻﻔﺎت اﻟﺤﻞ اﻷﻣﺜﻞ ﻟﻠﻤﺸﻜﻠﺔ ﻣﻦ ﺧﻼل اﻟﺘﻌﺮف ﻋﻠﻰ ﻣﺎھﯿﺔ اﻟﺨﻮارزﻣﯿﺎت ﻓﻲ ﻋﻠﻮم اﻟﺤﺎﺳﺐ. ﻣﺎھﻲ اﻟﺨﻮارزﻣﯿﺔ اﻟﺨﻮارزﻣﯿﺔ ھﻲ ﻣﺠﻤﻮﻋﺔ ﻣﻦ ﺧﻄﻮات رﯾﺎﺿﯿﺔ وﻣﻨﻄﻘﯿﺔ ﻣﻔﺼﻠﺔ وﻣﺘﺴﻠﺴﻠﺔ ﺗﻮﺿﺢ طﺮﯾﻘﺔ ﺣﻞ ﻣﺸﻜﻠﺔ ﻣﺎ ،وھﻲ ﺗﻘﻮم ﺑﺘﻮﺿﯿﺢ وﺗﺒﺴﯿﻂ طﺮﯾﻘﺔ ﻟﺤﻞ اﻟﻤﺸﻜﻠﺔ.اﯾﻀﺎ ً ﯾُﻌﺮف ﻗﺎﻣﻮس اﻛﺴﻔﻮرد اﻟﺨﻮارزﻣﯿﺎت ﻋﻠﻰ اﻧﮭﺎ ﻣﺠﻤﻮﻋﺔ ﻣﻦ اﻹﺟﺮاءات او اﻟﻘﻮاﻧﯿﻦ اﻟﻤﺴﺘﺨﺪﻣﺔ ﺳﻤﯿﺖ اﻟﺨﻮارزﻣﯿﺔ ﺑﮭﺬا اﻻﺳﻢ ﻧﺴﺒﺔ إﻟﻰ ﻋﺎﻟﻢ اﻟﺮﯾﺎﺿﯿﺎت واﻟﻔﻠﻚ أﺑﻮ ﻹﺟﺮاء ﺣﺴﺎﺑﺎت ﻣﻌﯿﻨﮫ او ﺣﻞ اﻟﻤﺸﻜﻼت اﻟﺨﺎﺻﺔ ﺑﺎﻟﺤﺎﺳﺐ.وﻗﺪ ُ ﻋﺒﺪ ﷲ ﻣﺤﻤﺪ ﺑﻦ ﻣﻮﺳﻰ اﻟﺨﻮارزﻣﻲ اﻟﺬي اﺑﺘﻜﺮھﺎ ﻓﻲ اﻟﻘﺮن اﻟﺘﺎﺳﻊ اﻟﻤﯿﻼدي. ﻓﻲ ﻋﻠﻢ اﻟﺤﺎﺳﻮب ﻧﻌﺮف اﻟﺨﻮارزﻣﯿﺔ ﻋﻠﻰ اﻧﮭﺎ طﺮﯾﻘﺔ دﻗﯿﻘﺔ وﻓﻌّﺎﻟﺔ ﺗ ُﺴﺘﺨﺪم ﻣﻦ ِﻗﺒﻞ اﻟﺤﺎﺳﻮب ﻟﺤﻞ ﻣﺸﻜﻠﺔ ﻣﺎ. ﻣﻦ اﻟﻤﺘﻮﻗﻊ ان ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺨﻮارزﻣﯿﺔ ﺑﻮاﺳﻄﺔ وﻛﯿﻞ ﺳﻮاء ﻛﺎن ﻛﺎﺋﻦ ﺑﺸﺮي أو آﻟﺔ )ﺣﺎﺳﻮب( ﻓﻲ ﻣﻌﻈﻢ اﻷوﻗﺎت وھﺬا ﺟﻞ اھﺘﻤﺎﻣﻨﺎ ﻓﻲ ھﺬا اﻟﻤﻘﺮر ،أي ان ﻣﻌﻈﻢ اﻟﺨﻮارزﻣﯿﺎت اﻟﺘﻲ ﺗﺘﻢ ﻛﺘﺎﺑﺘﮭﺎ ﻣﻦ اﻟﻤﺨﺘﺼﯿﻦ ﻓﻲ ﻣﺠﺎل اﻟﺤﺎﺳﺐ ﯾﺘﻢ ﺗﻨﻔﯿﺬھﺎ ﻣﻦ ﻗﺒﻞ وﻛﯿﻞ وﻧﻘﺼﺪ ﺑﮫ آﻟﺔ )ﺣﺎﺳﻮب( وﻟﺬا ﯾﺠﺐ ان ﺗﻜﻮن ﺧﻄﻮات اﻟﺨﻮارزﻣﯿﺔ واﺿﺤﺔ وﺳﮭﻠﺔ وﻣﻔﺼﻠﺔ ﺑﺤﯿﺚ ﯾﺴﺘﻄﯿﻊ اﻟﻮﻛﯿﻞ ﻓﮭﻤﮭﺎ وﺗﻨﻔﯿﺬھﺎ ﺑﺸﻜﻞ ﺳﻠﯿﻢ، ﻻ ﺳﯿﻤﺎ اذا ﻛﺎن اﻟﻮﻛﯿﻞ آﻟﺔ ﻷن اﻟﺤﺎﺳﻮب ﻻ ﯾﺴﺘﻄﯿﻊ اﺗﺨﺎذ ﻗﺮارات ﻣﺒﻨﯿﺔ ﻋﻠﻰ اﺳﺘﻨﺘﺎﺟﺎت ﻣﻨﻄﻘﯿﺔ ﻓﻲ ﻣﻌﻈﻢ اﻷﺣﯿﺎن ،ﻋﻠﻰ ﺳﺒﯿﻞ اﻟﻤﺜﺎل اﻟﻤﻜﻨﺴﺔ اﻟﺬﻛﯿﺔ ﻗﺪ ﺗﺴﺘﻤﺮ ﺑﺎﻟﻌﻤﻞ ﺗﺤﺖ اﻟﻤﻄﺮ ﻣﻤﺎ ﯾﺘﺴﺒﺐ ﻓﻲ اﻋﻄﺎل ﻏﯿﺮ ﻗﺎﺑﻠﺔ ﻟﻺﺻﻼح وﻟﻮ ﻛﺎن ﻛﺎﺋﻦ ﺑﺸﺮي ﻣﻦ ﯾﻘﻮم ﺑﺎﻟﺘﻨﻈﯿﻒ ﻟﺘﻮﻗﻒ ﻋﻦ اﻟﻌﻤﻞ ﻣﺒﺎﺷﺮة ﻷن اﻹﻧﺴﺎن ﻗﺎدر ﻋﻠﻰ اﺗﺨﺎذ اﻟﻘﺮارات.ﻓﯿﻤﺎ ﯾﻠﻲ ﻣﺜﺎل ﯾﻮﺿﺢ اﻟﻤﻘﺼﻮد ﺑﺎﻟﺨﻮارزﻣﯿﺔ ﺑﺸﻜﻞ ﻋﺎم. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 14 ﻣﺜﺎل :١ ﻣﺎھﻲ اﻟﺨﻄﻮات )اﻟﺨﻮارزﻣﯿﺔ( اﻟﻤﺘﺒﻌﺔ ﻻﺳﺘﻌﺎرة ﻛﺘﺎب ﻣﻦ ﻣﻜﺘﺒﺔ اﻟﻤﻠﻚ ﺳﻌﻮد اﻟﻌﺎﻣﺔ ﺑﺒﺮﯾﺪة؟ اﺑﺪأ ﺗﺣدﯾد اﺳم اﻟﻛﺗﺎب ﺗﺣدﯾد اﻟوﺳﯾﻠﺔ اﻷﻧﺳب ﻟﻠذھﺎب ﻟﻠﻣﻛﺗﺑﺔ )ﺳﯾﺎرة ،ﺣﺎﻓﻠﺔ ،اﺟرة( اﻟذھﺎب اﻟﻰ اﻟﻣﻛﺗﺑﺔ اﻟﺳؤال ﻋن ﻣﻛﺎن اﻟﻛﺗﺎب اﺣﺿﺎر اﻟﻛﺗﺎب ﺗﺳﺟﯾل ﺗﺎرﯾﺦ اﻻﺳﺗﻌﺎرة وﺗﺎرﯾﺦ اﻻﺳﺗرﺟﺎع ﻣﻐﺎدرة اﻟﻣﻛﺗﺑﺔ ﺗﻮﻗﻒ ﻓﻲ ھﺬا اﻟﻤﺜﺎل اوردﻧﺎ ﺧﻮارزﻣﯿﺔ ﺣﻞ ﻣﺸﻜﻠﺔ اﺳﺘﻌﺎرة ﻛﺘﺎب ﻣﻦ ﻣﻜﺘﺒﺔ اﻟﻤﻠﻚ ﺳﻌﻮد وﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺨﻮارزﻣﯿﺔ ﻣﻦ ِﻗﺒﻞ وﻛﯿﻞ )ﻛﺎﺋﻦ ﺑﺸﺮي(.وھﺬا ﯾﻌﻨﻲ أن أي ﺷﺨﺺ ﯾﺮﻏﺐ ﺑﺎﺳﺘﻌﺎرة ﻛﺘﺎب ﻣﻦ ﻣﻜﺘﺒﺔ اﻟﻤﻠﻚ ﺳﻌﻮد ﯾﺴﺘﻄﯿﻊ اﺗﺒﺎع اﻟﺨﻄﻮات )اﻟﺨﻮارزﻣﯿﺔ( ﺣﺘﻰ ﯾﺤﺼﻞ ﻋﻠﻰ اﻟﻜﺘﺎب ﺑﺎﻟﻄﺮﯾﻘﺔ اﻟﺼﺤﯿﺤﺔ. ﺑﻤﻌﻠﻮﻣﯿﺔ Xو Yﻓﻲ اﻟﻤﻌﺎدﻟﺔ اﻟﺘﺎﻟﯿﺔ Z=(X-Y)2 اﻛﺘﺐ ﺧﻮارزﻣﯿﺔ ﻹﯾﺠﺎد ﻗﯿﻤﺔ Z ﻣﺜﺎل :٢ اﺑﺪأ .1اﻟﻤﺪﺧﻼت X ,Y:اﻟﻤﺨﺮﺟﺎتZ : .2ﺗﻌﻮﯾﺾ ﻗﯿﻤﺔ ﻛﻞ ﻣﻦ XوY .3اﯾﺠﺎد ﻧﺎﺗﺞ )(X-Y .4اﯾﺠﺎد ﻧﺎﺗﺞ ﺗﺮﺑﯿﻊ اﻟﺨﻄﻮة اﻟﺴﺎﺑﻘﺔ وھﻲ ﻗﯿﻤﺔ Z ﺗﻮﻗﻒ ﻣﺜﺎل :٣أﻛﺘﺐ اﻟﺨﻮارزﻣﯿﺔ اﻟﺘﻲ ﺗﺴﺘﺨﺮج اﻟﻌﺪد اﻷﻛﺒﺮ ﻣﻦ ﺿﻤﻦ 5أﻋﺪاد ﺻﺤﯿﺤﺔ :ع، 1ع، 2ع، 3ع 4و ع5 اﺑﺪأ -١اﻟﻤﺪﺧﻼت :ع، 1ع، 2ع، 3ع 4و ع.5اﻟﻤﺨﺮﺟﺎت :اﻟﻌﺪد اﻷﻛﺒﺮ ) ك( -٢ﻗﺎرن ﺑﯿﻦ اﻟﻌﺪدﯾﻦ ع 1وع 2واﺟﻌﻞ أﻛﺒﺮھﻢ ھﻮ اﻟﻨﺎﺗﺞ “ك” -٣ﻗﺎرن ﺑﯿﻦ اﻟﻨﺎﺗﺞ ك واﻟﻌﺪد ع3 -٤أﺟﻌﻞ أﻛﺒﺮھﻤﺎ ھﻮ اﻟﻨﺎﺗﺞ “ك” -٥ﻗﺎرن ﺑﯿﻦ اﻟﻨﺎﺗﺞ اﻟﺴﺎﺑﻖ واﻟﻌﺪد ع4 -٦أﺟﻌﻞ أﻛﺒﺮھﻤﺎ ھﻮ اﻟﻨﺎﺗﺞ “ك” -٧ﻗﺎرن ﺑﯿﻦ اﻟﻨﺎﺗﺞ اﻟﺴﺎﺑﻖ واﻟﻌﺪد ع5 -٨أﺟﻌﻞ أﻛﺒﺮھﻤﺎ ھﻮ اﻟﻨﺎﺗﺞ اﻟﻨﮭﺎﺋﻲ” ك” ” -٩ك” ھﻮ اﻟﻌﺪد اﻷﻛﺒﺮ ﺗﻮﻗﻒ اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 15 :٤أﻛﺘﺐ اﻟﺨﻮارزﻣﯿﺔ اﻟﺘﻲ ﺗﺠﻤﻊ درﺟﺎت اﻟﻄﻼب اﻟﺘﺎﻟﯿﺔ٧٥ ،٦٢، ٩٨ ،٤٩ ،٢٦ : ﻣﺜﺎل اﺑﺪأ اﻟﻤﺨﺮﺟﺎت :ﻣﺠﻤﻮع درﺟﺎت اﻟﻄﻼب )ج( .1اﻟﻤﺪﺧﻼت :درﺟﺎت اﻟﻄﻼب ٧٥ ،٦٢، ٩٨ ،٤٩ ،٢٦ .2ﻗﺮاءة اﻟﺪرﺟﺔ اﻷوﻟﻰ .3ﺟﻤﻊ اﻟﺪرﺟﺔ اﻷوﻟﻰ ﻣﻊ ج .4ﻗﺮاءة اﻟﺪرﺟﺔ اﻟﺜﺎﻧﯿﺔ .5ﺟﻤﻊ اﻟﺪرﺟﺔ اﻟﺜﺎﻧﯿﺔ ﻣﻊ ج .6ﻗﺮاءة اﻟﺪرﺟﺔ اﻟﺜﺎﻟﺜﺔ .7ﺟﻤﻊ اﻟﺪرﺟﺔ اﻟﺜﺎﻟﺜﺔ ﻣﻊ ج .8ﻗﺮاءة اﻟﺪرﺟﺔ اﻟﺮاﺑﻌﺔ .9ﺟﻤﻊ اﻟﺪرﺟﺔ اﻟﺮاﺑﻌﺔ ﻣﻊ ج .10ﻗﺮاءة اﻟﺪرﺟﺔ اﻟﺨﺎﻣﺴﺔ .11ﺟﻤﻊ اﻟﺪرﺟﺔ اﻟﺨﺎﻣﺴﺔ ﻣﻊ ج .12اﻟﻤﺨﺮﺟﺎت ﻣﺠﻤﻮع درﺟﺎت اﻟﻄﻼب )ج( ﺗﻮﻗﻒ ﻧﻼﺣﻆ ﻓﻲ اﻷﻣﺜﻠﺔ اﻟﺴﺎﺑﻘﺔ ان ﺟﻤﯿﻊ اﻟﺨﻮارزﻣﯿﺎت ﺗﻢ ﻓﯿﮭﺎ ﻣﺮاﻋﺎة اﻟﺘﺎﻟﻲ: ﺗﺒﺪأ اﻟﺨﻮارزﻣﯿﺔ ﺑﻜﻠﻤﺔ اﺑﺪأ وﺗﻨﺘﮭﻲ ﺑﻜﻠﻤﺔ ﺗﻮﻗﻒ. - ﯾﺘﻢ ﺗﺤﺪﯾﺪ اﻟﻤﺪﺧﻼت وھﻲ ﺗﻤﺜﯿﻞ اﻟﻤﻌﻄﯿﺎت ﻓﻲ ﺳﺮد اﻟﻤﺸﻜﻠﺔ )ﻗﯿﻤﺔ او أﻛﺜﺮ(. - ﯾﺘﻢ ﺗﺤﺪﯾﺪ اﻟﻤﺨﺮﺟﺎت وھﻲ ﺗﻤﺜﯿﻞ ﻟﻠﻨﺎﺗﺞ اﻟﻤﻄﻠﻮب ﻋﻨﺪ ﺣﻞ اﻟﻤﺸﻜﻠﺔ )ﻗﯿﻤﺔ او أﻛﺜﺮ(. - ﯾﺘﻢ ﺗﺤﺪﯾﺪ اﻟﺨﻄﻮات وﻛﻞ ﺧﻄﻮة ﺗﻜﻮن ﻣﻨﺘﮭﯿﺔ وﺗﺤﺘﻤﻞ ﻣﻌﻨﻰ واﺣﺪ ﻋﻠﻰ اﻷﻗﻞ. - ﺟﻤﯿﻊ اﻟﺨﻮارزﻣﯿﺎت اﻟﺴﺎﺑﻘﺔ ﺗﻢ ﻛﺘﺎﺑﺘﮭﺎ ﺑﺼﻮرة ﻋﺎﻣﺔ ﻟﺘﺰود اﻟﻤﺘﺪرب ﺑﻤﺪﺧﻞ اﻟﻰ طﺮﯾﻘﺔ ﻛﺘﺎﺑﺔ اﻟﺨﻮارزﻣﯿﺔ وﺳﯿﺘﻢ ﻻﺣﻘﺎ ً ﺷﺮح اﻟﻄﺮﯾﻘﺔ اﻟﻌﻠﻤﯿﺔ واﻟﻤﺘﺒﻌﺔ ﻓﻲ ﻛﺘﺎﺑﺔ اﻟﺨﻮارزﻣﯿﺎت ﻟﻠﻤﺸﺎﻛﻞ اﻟﺘﻲ ﯾﺘﻢ ﺣﻠﮭﺎ ﺑﺎﺳﺘﺨﺪام اﻟﺤﺎﺳﺐ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 16 ﻣﻮاﺻﻔﺎت اﻟﺨﻮارزﻣﯿﺔ ﺗﺘﻜﻮن اﻟﺨﻮارزﻣﯿﺔ ﻣﻦ ﻋﺪد ﻣﺤﺪود ﻣﻦ اﻟﺨﻄﻮات اﻟﺘﻲ ﺗﺘﻄﻠﺐ ﻋﻤﻠﯿﺔ واﺣﺪة او أﻛﺜﺮ ﻟﺘﻨﻔﯿﺬھﺎ ﺑﺪون ﻟﺒﺲ.وھﺬا ﯾﻌﻨﻲ ان ﺟﻤﯿﻊ اﻟﻌﻤﻠﯿﺎت ﯾﺠﺐ ان ﺗﻜﻮن ﻣﺤﺪده وواﺿﺤﺔ دون أدﻧﻲ ﻏﻤﻮض ﻟﯿﺘﻢ ﺗﻨﻔﯿﺬھﺎ ﺑﺎﻟﺸﻜﻞ اﻟﺼﺤﯿﺢ ﻣﻦ ِﻗﺒﻞ اﻟﻮﻛﯿﻞ.ﻛﻤﺎ ﯾﺠﺐ ان ﺗﻜﻮن ﺟﻤﯿﻊ اﻟﺨﻄﻮات ﻓﻌّﺎﻟﺔ أي ﺗ ُﻨﺘﺞ اﻟﻨﺘﺎﺋﺞ اﻟﺼﺤﯿﺤﺔ واﻟﻤﺘﻮﻗﻌﺔ ﻓﻲ وﻗﺖ زﻣﻨﻲ ﻣﺤﺪد ،أي ان اﻟﺨﻮارزﻣﯿﺔ ﯾﺠﺐ ان ﺗﻜﻮن ﻣﺤﺪدة وﻓﻌّﺎﻟﺔ وﻣﻨﺘﮭﯿﺔ. ﻛﻤﺎ ﯾﺠﺐ ان ﺗﻨﺘﮭﻲ اﻟﺨﻮارزﻣﯿﺔ ﺑﻌﺪد ﻣﺤﺪود ﻣﻦ اﻟﺨﻄﻮات ،وﻓﻲ ﺣﺎل ﻟﻢ ﺗﻨﺘﮫ ﺧﻄﻮات اﻟﺨﻮارزﻣﯿﺔ ﻓﻲ إطﺎر زﻣﻨﻲ ﻣﺤﺪد ﻓﺈﻧﻨﺎ ﻧﻮاﺟﮫ ﻣﺸﻜﻠﺔ ﻣﻌﻘﺪة ،ﺣﯿﺚ ﻻ ﯾﻤﻜﻨﻨﺎ ﺗﺤﺪﯾﺪ ﻣﺎ إذا ﻛﺎﻧﺖ اﻟﺨﻮارزﻣﯿﺔ ﻏﯿﺮ ﻓﻌّﺎﻟﺔ وﺗﺴﺘﻐﺮق وﻗﺖ طﻮﯾﻞ ﻓﻲ اﻟﺘﻨﻔﯿﺬ او ان اﻟﺨﻮارزﻣﯿﺔ ﻏﯿﺮ ﺻﺤﯿﺤﺔ وﺗﺘﻜﺮر اﻟﻰ ﻣﺎ ﻻﻧﮭﺎﯾﺔ ،او ﻓﯿﻤﺎ إذا ﻛﺎن ھﻨﺎك ﻋﻄﻞ ﻓﻲ اﻷﺟﮭﺰة اﻟﻤﺴﺘﺨﺪﻣﺔ اﺛﻨﺎء ﺗﻨﻔﯿﺬ اﻟﺨﻮارزﻣﯿﺔ. إذا اﺳﺘﻄﻌﻨﺎ ان ﻧﺜﺒﺖ ان اﻟﺨﻮارزﻣﯿﺔ ﺻﺤﯿﺤﺔ وﺗﻌﻄﻲ اﻟﻨﺘﺎﺋﺞ اﻟﻤﺘﻮﻗﻌﺔ وﺗﻨﺘﮭﻲ ﻓﻲ وﻗﺖ زﻣﻨﻲ ﻣﻌﯿﻦ ﻓﺈﻧﮭﺎ ﻏﯿﺮ ﻓﻌّﺎﻟﺔ وﺗﺴﺘﻐﺮق وﻗﺖ طﻮﯾﻞ أﺛﻨﺎء اﻟﺘﻨﻔﯿﺬ وﺗﺤﺘﺎج اﻟﻰ ﺿﺒﻂ وﺗﺼﺤﯿﺢ. ﻣﻦ اﻟﺠﺪﯾﺮ ان ﻧﻮﺿﺢ ھﻨﺎ اﻧﻨﺎ ﯾﺠﺐ ان ﻻ ﻧﺨﻠﻂ ﺑﯿﻦ ﻣﻄﻠﺐ ان ﺗﻜﻮن اﻟﺨﻮارزﻣﯿﺔ ﻣﻨﺘﮭﯿﮫ وﺑﯿﻦ طﺒﯿﻌﺔ اﻟﻤﺸﻜﻼت اﻟﺘﻲ ﯾﺘﻄﻠﺐ ﺣﻠﮭﺎ ﻣﺨﺮﺟﺎت ﻻﻧﮭﺎﺋﯿﺔ.ﻣﺜﻼً ،ﻟﻮ ﻛﺎن اﻟﻤﻄﻠﻮب ﻛﺘﺎﺑﺔ ﺧﻮارزﻣﯿﺔ ﻟﺘﻄﺒﯿﻖ ﺗﻔﺎﻋﻠﻲ ،ﯾﻄﻠﺐ ﻣﻦ اﻟﻤﺴﺘﺨﺪم ادﺧﺎل اﻟﺴﺆال ﻛﻤﺪﺧﻼت ﺛﻢ ﯾﺒﺤﺚ اﻟﺤﺎﺳﻮب ﻋﻦ اﻹﺟﺎﺑﺔ وﯾﻌﺮﺿﮭﺎ ﻟﻠﻤﺴﺘﺨﺪم ﻛﻤﺨﺮﺟﺎت.ﻓﻲ ھﺬا اﻟﻤﺜﺎل ﯾﺠﺐ ان ﯾﻜﻮن ﻟﺪﯾﻨﺎ ﺧﻮارزﻣﯿﺔ رﺋﯿﺴﯿﺔ ﻣﺴﺘﻌﺪة داﺋﻤﺎ ً ﻻﺳﺘﻘﺒﺎل اﻟﻤﺪﺧﻼت )ﺳﺆال اﻟﻤﺴﺘﺨﺪم( ﺛﻢ ﺗﺴﺘﺪﻋﻲ ﺧﻮارزﻣﯿﺔ ﻓﺮﻋﯿﮫ ﻟﺘﻘﻮم ﺑﺎﻟﺒﺤﺚ ﻋﻦ اﻹﺟﺎﺑﺔ وﻋﺮﺿﮭﺎ ﻟﻠﻤﺴﺘﺨﺪم)ﻣﺨﺮﺟﺎت( ﻓﻲ ﻓﺘﺮة زﻣﻨﯿﺔ ﻣﺤﺪده وﺑﮭﺬا أﺻﺒﺢ اﻟﺤﻞ ﺻﺤﯿﺢ وﻓﻌّﺎل ،ھﻨﺎ ﻻ ﯾﺠﺐ ان ﻧﻘﻮل ان اﻟﺨﻮارزﻣﯿﺔ اﻟﺮﺋﯿﺴﯿﺔ ﻻ ﻣﻨﺘﮭﯿﺔ ﻷﻧﮭﺎ ﺗﺴﺘﻤﺮ ﺑﺎﻟﻌﻤﻞ اﻟﻰ ﺣﯿﻦ اﻗﻔﺎل اﻟﺘﻄﺒﯿﻖ ،ﺑﻞ ان طﺒﯿﻌﺔ اﻟﻤﺸﻜﻠﺔ ﺗﺘﻄﻠﺐ ان ﺗﻌﻤﻞ اﻟﺨﻮارزﻣﯿﺔ اﻟﺮﺋﯿﺴﯿﺔ ﺑﻄﺮﯾﻘﺔ ﻻ ﻣﻨﺘﮭﯿﺔ ﺑﺤﯿﺚ ﺗﻜﻮن ﻋﻠﻰ اﺳﺘﻌﺪاد ﻻﺳﺘﻘﺒﺎل أﺳﺌﻠﺔ اﻟﻌﻤﯿﻞ. ﻣﻮاﺻﻔﺎت اﻟﺨﻮارزﻣﯿﺔ: ﺗﺤﺪﯾﺪ اﻟﻤﺪﺧﻼت :Inputﯾﺠﺐ ﻋﺮض اﻟﻘﯿﻢ او اﻟﻤﻌﻄﯿﺎت اﻟﺘﻲ ﻧﺤﺘﺎﺟﮭﺎ ﻛﻤﺪﺧﻼت )ﻗﯿﻤﺔ او أﻛﺜﺮ(. ﺗﺤﺪﯾﺪ اﻟﻤﺨﺮﺟﺎت : Outputان ﺗﻮﺿﺢ اﻟﺨﻮارزﻣﯿﺔ اﻟﻨﺘﺎﺋﺞ اﻟﻔﻌﻠﯿﺔ اﻟﻤﺘﻮﻗﻌﺔ ﻣﻦ ﺗﻄﺒﯿﻖ اﻟﺨﻮارزﻣﯿﺔ )ﻗﯿﻤﺔ او أﻛﺜﺮ(. اﻟﻮﺿﻮح :Definitnessﻛﻞ ﺧﻄﻮة ﻓﻲ اﻟﺨﻮارزﻣﯿﺔ واﺿﺤﺔ اﻟﻤﻌﺎﻧﻲ وﻏﯿﺮ ﻏﺎﻣﻀﺔ وﻻ ﺗﺤﻤﻞ أﻛﺜﺮ ﻣﻦ ﻣﻌﻨﻰ. اﻟﻤﺤﺪودﯾﺔ : Finitenessﻛﻞ ﺧﻄﻮة ﻓﻲ اﻟﺨﻮارزﻣﯿﺔ ﯾﻤﻜﻦ ﺣﻠﮭﺎ ﻓﻲ ﻓﺘﺮة زﻣﻨﯿﺔ ﻣﺤﺪدة. ﻓﻌﺎﻟﯿﺔ اﻟﺤﻞ : Effectivenessﻛﻞ ﺧﻄﻮه ﻓﻲ اﻟﺨﻮارزﻣﯿﺔ ﻣﻤﻜﻨﺔ اﻟﺤﻞ وذات ﻓﻌﺎﻟﯿﺔ ﻋﺎﻟﯿﺔ. اﻻﺳﺘﺜﻨﺎﺋﯿﺔ :ﻛﻞ ﺧﻄﻮه ﻣﻦ ﺧﻄﻮات اﻟﺨﻮارزﻣﯿﺔ ﻻ ﺗﺘﻄﺎﺑﻖ ﻣﻊ أي ﻣﻦ اﻟﺨﻄﻮات اﻷﺧﺮى. ﻓﻲ اﻟﺨﻮارزﻣﯿﺎت ﻧﺄﺧﺬ ﺑﻌﯿﻦ اﻻﻋﺘﺒﺎر اﻟﺠﻮاﻧﺐ اﻟﻜﻤﯿﺔ واﻟﻜﯿﻔﯿﺔ ﻟﻨُﺤﺪد اﻟﺤﻞ اﻟﻤﻨﺎﺳﺐ ،ﻓﺎﻟﺤﻞ اﻟﺠﯿﺪ ﯾﺠﺐ ان ﯾﻜﻮن اﻗﺘﺼﺎدي ﻓﻲ اﺳﺘﺨﺪام اﻟﻤﻮارد اﻟﺒﺸﺮﯾﺔ وﻣﻮارد اﻟﺤﺎﺳﺐ.ادﻧﺎه ﻣﻮاﺻﻔﺎت اﻟﺨﻮارزﻣﯿﺔ اﻟُﻤﺜﻠﻰ ﻣﻦ اﻟﻨﺎﺣﯿﺔ اﻟﻜﯿﻔﯿﺔ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 17 ﻣﻮاﺻﻔﺎت اﻟﺨﻮارزﻣﯿﺔ اﻟﻤﺜﻠﻰ: ان ﺗﻜﻮن ﺑﺴﯿﻄﺔ وﻗﻮﯾﺔ وﺷﺎﻣﻠﺔ. .1 ﺳﮭﻠﺔ اﻟﻔﮭﻢ وواﺿﺤﺔ ﻟﻶﺧﺮﯾﻦ ،أي ﯾﻤﻜﻦ ﺗﻨﻔﯿﺬھﺎ دون ﻏﻤﻮض واﻟﺘﺒﺎس. .2 ﻗﺎﺑﻠﺔ ﻟﻠﺘﻌﺪﯾﻞ ﻋﻨﺪ اﻟﺤﺎﺟﺔ. .3 ﺗﻌﻄﻲ ﻧﺘﺎﺋﺞ ﺻﺤﯿﺤﺔ ﻟﺠﻤﯿﻊ اﻟﻤﺸﺎﻛﻞ اﻟﻤﻌﻄﺎة ﺑﻤﺎ ﻓﻲ ذﻟﻚ اﻟﺤﺎﻻت اﻟﺤﺮﺟﺔ. .4 اﻗﺘﺼﺎدﯾﺔ ﻓﻲ اﺳﺘﺨﺪام ﻣﻮارد اﻟﺤﺎﺳﺐ )وﻗﺖ اﻟﺘﻨﻔﯿﺬ ،ﻣﺴﺎﺣﺔ اﻟﺘﺨﺰﯾﻦ ،اﻷﺟﮭﺰة اﻟﻄﺮﻓﯿﺔ(. .5 ﺗﻢ ﺗﻮﺛﯿﻘﮭﺎ ﺑﺸﻜﻞ ﺻﺤﯿﺢ ،ﯾﻤﻜﻦ ﻟﻶﺧﺮﯾﻦ اﻟﺤﺼﻮل ﻋﻠﯿﮫ واﺳﺘﺨﺪاﻣﮭﺎ ﻓﻲ ﺗﻄﺒﯿﻘﺎﺗﮭﻢ. .6 ﻗﺎﺑﻠﺔ ﻟﻠﻨﻘﻞ ،أي ﻣﺴﺘﻘﻠﺔ ﺑﺬاﺗﮭﺎ وﻻ ﺗﻌﺘﻤﺪ ﻋﻠﻰ ﺟﮭﺎز ﺣﺎﺳﻮب ﺑﻤﻮاﺻﻔﺎت ﻣﺤﺪده او ﻧﻈﺎم ﺗﺸﻐﯿﻞ ﻣﻌﯿﻦ. .7 ﯾﻤﻜﻦ اﺳﺘﺨﺪاﻣﮭﺎ ﻛﺠﺰء ﻓﺮﻋﻲ ﻣﻦ ﺣﻞ ﻣﺸﻜﻠﮫ أﺧﺮى أﻛﺜﺮ ﺗﻌﻘﯿﺪا ً. .8 ﻣﺮﺿﯿﺔ وﻣﻘﻨﻌﺔ ﻟﻤﺼﻤﻢ اﻟﺨﻮارزﻣﯿﺔ وﻟﻢ ﯾﺘﻢ ﺗﻘﺪﯾﻤﮭﺎ ﻛﺤﻞ ﻣﺆﻗﺖ أو ﻋﺸﻮاﺋﻲ. .9 ھﺬه أﺑﺮز ﻣﻮاﺻﻔﺎت اﻟﺨﻮارزﻣﯿﺔ اﻟﺠﯿﺪة ﻣﻦ ﺣﯿﺚ اﻟﻜﯿﻒ ،اﻣﺎ ﻣﻦ ﺣﯿﺚ اﻟﻜﻢ ﻓﮭﻨﺎك ﻋﺪد ﻣﻦ اﻟﻤﻘﺎﯾﯿﺲ اﻟﺘﻲ ﺗﺤﺪد ﻣﺎ إذا ﻛﺎﻧﺖ اﻟﺨﻮارزﻣﯿﺔ ﺟﯿﺪة وھﻲ ﻣﻘﺎﯾﯿﺲ ﻣﮭﻤﮫ ﺟﺪا ً ﻷﻧﮭﺎ ﺗﺴﺎﻋﺪ ﻓﻲ ﺗﻘﺪﯾﺮ أداء اﻟﺨﻮارزﻣﯿﺔ وﻣﻘﺎرﻧﺔ أداء ﺧﻮارزﻣﯿﺘﯿﻦ او أﻛﺜﺮ.أﻛﺜﺮ اﻟﺨﻮارزﻣﯿﺎت ﻓﻌّﺎﻟﯿﺔ ھﻲ اﻟﺘﻲ ﺗﻘﺘﺼﺪ ﻓﻲ اﺳﺘﮭﻼك ﻣﻮارد اﻟﺤﺎﺳﺐ واﻟﺬي ﯾﻨﺘﺞ ﻋﻨﮫ ﺗﻮﻓﯿﺮ ﻓﻲ اﻟﻮﻗﺖ واﻟﻤﺎل. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 18 أھﻤﯿﺔ اﻟﺨﻮارزﻣﯿﺎت ﻓﻲ ﻣﺠﺎل اﻟﺤﺎﺳﻮب ﯾﻌﺘﻘﺪ اﻟﺒﻌﺾ ﺑﺄن ﺑﺮﻣﺠﺔ اﻟﺘﻄﺒﯿﻘﺎت ﻣﮭﻤﺔ ﺳﮭﻠﺔ ﺑﺴﺒﺐ ﺗﻮﻓﺮ اﻷدوات وﺳﮭﻮﻟﺔ اﻟﻮﺻﻮل اﻟﯿﮭﺎ ﻣﺘﻤﺜﻠﺔ ﻓﻲ اﻟﻤﺒﺮﻣﺞ ،ﺑﯿﺌﺔ ﺗﻄﻮﯾﺮ اﻟﺘﻄﺒﯿﻖ ،واﺗﺼﺎل اﻧﺘﺮﻧﺖ وﻏﯿﺮھﺎ.وﻟﻜﻦ ﻓﻲ اﻟﻮاﻗﻊ ھﻲ ﻋﻤﻠﯿﺔ ﺻﻌﺒﺔ وﻣﻌﻘﺪة اﻟﻰ ﺣﺪ ﻣﺎ إذا ﻧﻈﺮﻧﺎ اﻟﻰ اﻟﻤﺘﻄﻠﺒﺎت وﺻﺤﺔ ﻋﻤﻞ اﻟﺒﺮﻧﺎﻣﺞ ﺑﺎﻟﻜﻔﺎءة واﻟﺪﻗﺔ اﻟﻤﺘﻮﻗﻌﺔ ﻟﻨﻄﺎق ﻣﻌﯿﻦ ﻣﻦ اﻟﺒﯿﺎﻧﺎت ،وھﺬا ﻣﺎ ﯾﺴﻤﻰ ﺻﺤﺔ ﻋﻤﻞ اﻟﺒﺮﻧﺎﻣﺞ ).(correctness ﺑﺸﻜﻞ ﻋﺎم ﻻ ﯾﻤﻜﻦ ﺿﻤﺎن ﺻﺤﺔ ﻋﻤﻞ اﻟﺒﺮﻧﺎﻣﺞ ﺑﻤﺠﺮد اﺧﺘﺒﺎر أداءه ﺑﺄﺧﺬ ﺟﻤﯿﻊ اﻟﺒﯿﺎﻧﺎت اﻟﻤﻤﻜﻨﺔ ﻛﻤﺪﺧﻼت وإﯾﺠﺎد اﻟﻤﺨﺮﺟﺎت اﻟﺼﺤﯿﺤﺔ ﻓﻲ ﻛﻞ ﻣﺮة.ﺑﻜﻞ اﺳﻒ ،ﯾﺼﻌﺐ ﻋﻠﻰ ﻣﺒﺮﻣﺠﯿﻦ اﻟﺤﺎﺳﺐ اﻟﺘﺄﻛﺪ ﻣﻦ ﺻﺤﺔ ﻋﻤﻞ اﻟﺒﺮﻧﺎﻣﺞ ﺑﺪون اﺧﺘﺒﺎر ﺷﺎﻣﻞ ﻟﺠﻤﯿﻊ اﻟﺤﺎﻻت اﻟﻤﻤﻜﻨﺔ اﻟﺘﻲ ﻗﺪ ﯾﻮاﺟﮭﮭﺎ اﻟﺒﺮﻧﺎﻣﺞ ،وﻟﺬﻟﻚ اﺧﺘﺒﺎر اﻟﺒﺮﻣﺠﯿﺎت ﺑﺸﻜﻞ ﻋﺎم ﯾﺠﺐ ان ﯾﻜﻮن ﻣﻦ ﺧﻼل ﻋﺪد ﻣﺤﺪد ﻣﻦ اﻟﻤﺪﺧﻼت ﺑﺎﻹﺿﺎﻓﺔ اﻟﻰ وﺳﺎﺋﻞ أﺧﺮى. ﻗﺪ ﯾﺘﺴﺎءل اﻟﺪارس ﻟﻤﺎذا ﻧﻘﻠﻖ ﺣﯿﺎل ﺻﺤﺔ اﻟﺒﺮﻧﺎﻣﺞ ﺑﺪءا ً ﻣﻦ ﻋﻤﻞ اﻟﻤﻌﺎﻟﺠﺎت اﻟﺼﻐﯿﺮة اﻟﺘﻲ ﺗﺘﺤﻜﻢ ﻓﻲ اﻟﻐﺴﺎﻟﺔ ﻛﻤﺜﺎل ﺣﺘﻰ أﺟﮭﺰة اﻟﺤﺎﺳﺐ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻓﻲ اﻷﻋﻤﺎل اﻟﻌﺎﻣﺔ واﻟﺤﺴﺎﺑﺎت اﻟﻌﻠﻤﯿﺔ واﻟﮭﻨﺪﺳﯿﺔ ،وﺻﻮﻻً اﻟﻰ أﺟﮭﺰة اﻟﺤﺎﺳﺐ ﻓﺎﺋﻘﺔ اﻟﻘﺪرة اﻟﺘﻲ ﺗﺴﺎﻋﺪ اﻟﺤﻜﻮﻣﺎت ﻓﻲ اﺗﺨﺎذ اﻟﻘﺮارات اﻟﺴﯿﺎﺳﯿﺔ واﻟﻌﺴﻜﺮﯾﺔ.ﻛﻤﺎ ﻧﺸﺎھﺪ اﻟﯿﻮم ان اﻟﺤﺎﺳﻮب ﯾﺴﺘﺨﺪم ﻓﻲ ﺟﻤﯿﻊ اﻟﻤﺠﺎﻻت ،ﺗﺼﻮر ان ﯾﺤﺘﻮي اﻟﺤﺎﺳﻮب اﻟﻤﻮﺟﻮد ﻓﻲ ﺻﺎروخ "أﻏﻨﻰ" ﻋﻠﻰ ﺑﺮﻧﺎﻣﺞ ﻏﯿﺮ ﻣﻮﺛﻮق )ﻓﺎﯾﺮوس ﻣﺜﻼً( ﺛﻢ ﯾﺘﺴﺒﺐ ﻓﻲ ﻋﺪم ﺗﺤﺪﯾﺪ اﻟﻤﻮﻗﻊ ﺑﺎﻟﺸﻜﻞ اﻟﻤﻄﻠﻮب ﻟﯿﻘﻮم ﺑﻀﺮب ﻣﻨﺎطﻖ ﻏﯿﺮ ﻣﻘﺼﻮدة ﺑﺪﻻً ﻣﻦ ﺿﺮب ﻣﻨﺎطﻖ اﻟﻌﺪو.ﻣﺜﺎل آﺧﺮ ،ﻓﻲ ﺣﺎل ﺗﻢ ارﺳﺎل ﻗﻤﺮ ﺻﻨﺎﻋﻲ اﻟﻰ اﻟﻔﻀﺎء وأﺧﻄﺄ اﻟﺤﺎﺳﻮب اﻟﻤﻮﺟﻮد ﻓﻲ ﻣﺤﻄﺔ اﻟﺘﺤﻜﻢ ﻣﻦ ﺗﺤﺪﯾﺪ اﻟﻤﻜﺎن ﺑﺪﻗﺔ ﻟﯿﻨﺘﮭﻲ اﻟﻤﻄﺎف ﺑﺎﻟﻘﻤﺮ اﻟﺼﻨﺎﻋﻲ ﻣﺘﻤﺮﻛﺰا ً ﻓﻲ ﻣﺪار ﻏﯿﺮ ﻣﻨﺎﺳﺐ. ھﻨﺎك اﻟﻌﺪﯾﺪ ﻣﻦ اﻟﺘﻄﺒﯿﻘﺎت اﻟﺘﻲ ﺣﺪث ﻓﯿﮭﺎ أﺧﻄﺎء ﻛﻠﻔﺖ ﺧﺴﺎﺋﺮ ﻣﺎﻟﯿﺔ ﺿﺨﻤﺔ ﺑﺎﻹﺿﺎﻓﺔ اﻟﻰ اﻟﺠﮭﺪ واﻟﻮﻗﺖ اﻟﻤﺴﺘﮭﻠﻚ ﻓﻲ ﺗﺼﺤﯿﺢ اﻷﺧﻄﺎء.واﻷﺧﻄﺮ ﻣﻦ اﻟﺨﺴﺎﺋﺮ اﻟﻤﺎﻟﯿﺔ ھﻮ اﻟﺨﺴﺎﺋﺮ اﻟﺒﺸﺮﯾﺔ ﻓﺒﻌﺾ اﻷﺧﻄﺎء ﻗﺪ ﺗﺆﺛﺮ ﻋﻠﻰ ﺳﻼﻣﺔ اﻹﻧﺴﺎن ﻣﺜﻞ اﻟﺗطﺑﯾﻘﺎت اﻟطﺑﯾﺔ، أﻧظﻣﺔ اﻟﺳﻼﻣﺔ ،ﻣﺣطﺎت اﻟطﺎﻗﺔ اﻟذرﯾﺔ ،واﻟرﺣﻼت اﻟﻔﺿﺎﺋﯾﺔ اﻟﻣﺄھوﻟﺔ وﻏﯾرھﺎ.ﻓﻲ ﻣﺛل ھذه اﻟﺗطﺑﯾﻘﺎت ﯾﺟب ان ﻧﺿﻣن ان اﻟﺑرﻧﺎﻣﺞ ﯾﻌﻣل ﺑﺷﻛل ﺻﺣﯾﺢ ،وﻻ ﯾﻛﻔﻲ ان ﯾﻛون اﻟﺑرﻧﺎﻣﺞ ﺻﺣﯾﺣﺎ ً ﻓﻘط ،ﺑل ﯾﺟب ان ﯾﻛون ﻓﻌّﺎل ،ﻣن ﺣﯾث وﻗت اﻟﺗﻧﻔﯾذ اﻟﻣﺳﺗﻐرق و ﻣوارد اﻟﺣﺎﺳب اﻟﻣﺳﺗﺧدﻣﺔ ﻣﺛل اﻟذاﻛرة اﻟرﺋﯾﺳﯾﺔ واﻷﺟﮭزة اﻟطرﻓﯾﺔ.وﯾﺟب ان ﻻ ﻧﻐﻔل ﻋن أھﻣﯾﺔ ﺻﺣﺔ اﻟﺑرﻧﺎﻣﺞ ﻓﻲ اﻟﻣرﻛز اﻷول ،ﻓﻣﺎ اﻟﻔﺎﺋدة ﻣن ﺑرﻧﺎﻣﺞ ﻋﺎﻟﻲ اﻟﺳرﻋﺔ وﯾﻌطﻲ ﻧﺗﺎﺋﺞ ﺧﺎطﺋﺔ ،واﻷﺳواء ان ﯾﻌطﻲ ﻧﺗﺎﺋﺞ ﺻﺣﯾﺣﺔ اﺣﯾﺎﻧﺎ ً وﻧﺗﺎﺋﺞ ﺧﺎطﺋﺔ ﻓﻲ أﺣﯾﺎن أﺧرى وﺑﺎﻟﺗﺎﻟﻲ ﻻ ﯾﻣﻛن ان ﻧﺿﻣن ﺻﺣﺔ اﻟﺑرﻧﺎﻣﺞ داﺋﻣﺎ ً.ﻓﯾﻣﺎ ﯾﻠﻲ ﻧورد اﻟﻣﺗطﻠﺑﺎت اﻷﺳﺎﺳﯾﺔ ﻟﻠﺑرﻧﺎﻣﺞ: ﻣﺗطﻠﺑﺎت اﻟﺑرﻧﺎﻣﺞ ھﻲ: أن ﯾﻛون ﺳﮭل اﻟﻔﮭم. .1 ﻗﺎﺑل وﺳﮭل اﻟﺗﻌدﯾل ﻋﻠﯾﮫ ،ﻣن اﻟﺷﺎﺋﻊ ان ﺗﺗﻐﯾر ﻣﺗطﻠﺑﺎت اﻟﺑرﻧﺎﻣﺞ اﺛﻧﺎء اﺳﺗﺧداﻣﮫ. .2 ان ﯾﺗم ﺗوﺛﯾﻘﮫ ،ﺑﺣﯾث ﺗﺗم ﻛﺗﺎﺑﺔ طرﯾﻘﺔ ﺗطوﯾره وطرﯾﻘﺔ ﻋﻣﻠﺔ ﺑﺎﻟﺗﻔﺻﯾل. .3 ﻗﺎﺑﻠﯾﺔ اﻟﻧﻘل ،أي ﯾﻣﻛن ان ﯾﻌﻣل ﻋﻠﻰ ﺑﯾﺋﺎت ﻣﺧﺗﻠﻔﺔ )ﻧظﺎم اﻟﺗﺷﻐﯾل او اﻟﻌﺗﺎد( ﻣﻊ ﺗﻌدﯾل ﺑﺳﯾط او ﺑدون ﺗﻌدﯾل اطﻼﻗﺎً. .4 ﻟﻠﺨﻮارزﻣﯿﺎت أھﻤﯿﺔ ﻓﻲ ﻋﻠﻢ اﻟﺤﺎﺳﺐ ﺣﯿﺚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ ﺑﺮاﻣﺞ اﻟﺤﺎﺳﺐ ﻣﻦ ِﻗﺒﻞ اﻟﻤﺒﺮﻣﺞ ﺑﻨﺎًء ﻋﻠﻰ اﻟﻄﺮﯾﻘﺔ اﻟﻤﻘﺘﺮﺣﺔ ﻟﺤﻞ اﻟﻤﺸﻜﻠﺔ )اﻟﺨﻮارزﻣﯿﺔ( ،وﻟﺬا ﻓﺈن ﺟﻮدة اﻟﺨﻮارزﻣﯿﺔ ﺗﺆﺛﺮ ﻋﻠﻰ اﻟﻤﺒﺮﻣﺞ اﻟﺬي ﯾﺴﻌﻰ ﻟﺘﻄﻮﯾﺮ ﺑﺮﻧﺎﻣﺞ ذو ﻛﻔﺎءة ﻋﺎﻟﯿﺔ واﻟﻤﺴﺘﺨﺪم اﻟﺬي ﯾﺒﺤﺚ ﻋﻦ اﻟﺠﻮدة واﻟﻤﻮﺛﻮﻗﯿﺔ. ﻓﻮاﺋﺪ اﻟﺨﻮارزﻣﯿﺎت: .1ﺑﻨﺎء أﺳﺎس ﻗﻮي ﻣﻦ اﻟﺒﺪاﯾﺔ ﻟﻠﺪﺧﻮل ﻓﻲ ﻋﺎﻟﻢ اﻟﺒﺮﻣﺠﺔ. .2ﻓﮭﻢ ﺳﻠﯿﻢ ﻷﺳﺎس اﻟﺒﺮﻣﺠﺔ. .3اﻟﻘﺪرة ﻋﻠﻰ ﺗﻌﻠﻢ أي ﻟﻐﺔ ﺑﺮﻣﺠﯿﺔ ﻣﮭﻤﺎ ﺑﻠﻐﺖ ﺻﻌﻮﺑﺘﮭﺎ وﺗﻌﻘﯿﺪاﺗﮭﺎ. .4ﺗﻮﻓﯿﺮ اﻟﻮﻗﺖ واﻟﺠﮭﺪ ﻋﻨﺪ ﻛﺘﺎﺑﺔ اﻟﺘﻄﺒﯿﻘﺎت اﻟﺒﺮﻣﺠﯿﺔ. .5ﺗﺴﺎھﻢ ﻓﻲ ﺳﺮﻋﺔ اﻛﺘﺸﺎف اﻷﺧﻄﺎء ﻓﻲ ﻣﺮﺣﻠﺔ اﻟﺘﺨﻄﯿﻂ واﻟﺘﻔﻜﯿﺮ ﻗﺒﻞ اﻟﺒﺪء ﻓﻲ ﻣﺮﺣﻠﺔ ﻛﺘﺎﺑﺔ اﻟﺒﺮﻧﺎﻣﺞ. .6ﺗﻌﻄﯿﻨﺎ اﻟﻔﺮﺻﺔ ﻟﺤﻞ اﻟﻤﺸﺎﻛﻞ ﺑﻄﺮق ﻣﺨﺘﻠﻔﺔ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 19 اﻟﻌﻼﻗﺔ ﺑﯿﻦ اﻟﺨﻮارزﻣﯿﺎت وﻏﯿﺮھﺎ ﻣﻦ اﻟﻤﺠﺎﻻت ﻓﻲ ﻋﺎﻟﻢ اﻟﺤﺎﺳﻮب ﯾﺪرس اﻟﻤﺨﺘﺺ ﺑﻌﻠﻮم وھﻨﺪﺳﺔ اﻟﺤﺎﺳﺐ ﻋﺪد ﻣﻦ اﻟﻤﻮﺿﻮﻋﺎت ﻣﻨﮭﺎ ﻣﻘﺪﻣﺔ ﻓﻲ ﺑﺮﻣﺠﺔ اﻟﺤﺎﺳﻮب ،ﺗﺮاﻛﯿﺐ اﻟﺒﯿﺎﻧﺎت ،ﻣﻌﺎﻟﺠﺔ اﻟﻤﻠﻔﺎت ،وأﻧﻈﻤﺔ إدارة ﻗﻮاﻋﺪ اﻟﺒﯿﺎﻧﺎت وﻏﯿﺮھﺎ ،ﺣﯿﺚ ﯾﺪرس ﻓﻲ ﻛﻞ ﻣﻦ ھﺬه اﻟﻤﻮﺿﻮﻋﺎت اﻟﻤﻔﺎھﯿﻢ واﻟﺘﻘﻨﯿﺎت اﻟﺨﺎﺻﺔ ﺑﻜﻞ ﻣﻨﮭﺎ ﻟﯿﺒﻨﻲ ﻗﺎﻋﺪة ﻣﻌﺮﻓﯿﮫ ﺗﺴﺎﻋﺪه ﻓﻲ ﺣﻞ اﻟﻤﺸﻜﻼت اﻟﻜﺒﯿﺮة واﻟﻤﻌﻘﺪة ﻣﻦ ﺧﻼل اﻟﺤﺎﺳﺐ. ﺗﺴﺎﻋﺪ اﻟﺨﻮارزﻣﯿﺎت اﻟﻤﺘﺨﺼﺺ ﻓﻲ ﻋﻠﻮم اﻟﺤﺎﺳﺐ ﻣﻦ اﺧﺘﯿﺎر اﻟﻄﺮﯾﻘﺔ اﻟﻤﺜ ُﻠﻰ ﻟﺤﻞ اﻟﻤﺸﻜﻠﺔ ﺑﺎﺧﺘﯿﺎر اﻟﺨﻮارزﻣﯿﺔ اﻷﻗﺮب ﻟﻠﺼﻮاب ،وﻣﻦ ﺛﻢ ﯾﻘﻮم ﺑﺘﻨﻔﯿﺬھﺎ ﺑﺎﺳﺘﺨﺪام ﻟﻐﺔ ﺑﺮﻣﺠﺔ ﻣﻌﯿﻨﺔ.وﻓﯿﻤﺎ ﯾﻠﻲ أھﻢ اﻟﺨﻄﻮات ﻟﺘﻄﻮﯾﺮ ﺣﻞ ﻣﺸﻜﻠﺔ ﺑﺴﯿﻄﺔ او ﻛﺒﯿﺮة وﻣﻌﻘﺪة. ﺧﻄﻮات ﺣﻞ اﻟﻤﺸﻜﻼت ﺑﺎﺳﺘﺨﺪام اﻟﺤﺎﺳﻮب: ﺗﻌرﯾف اﻟﻣﺷﻛﻠﺔ وﺗﺣﻠﯾﻠﮭﺎ :ﺳﻧﺣدد ھﻧﺎ ﻣﺎ ﯾﺟب اﻟﻘﯾﺎم ﺑﮫ وﻟﯾس ﻛﯾﻔﯾﺔ اﻟﻘﯾﺎم ﺑﮫ ،ﻋﻠﻰ ان ﯾﺗم ﺗﺣدﯾد اﻟﻣﮭﺎم اﻟﻣطﻠوب .1 اﻟﻘﯾﺎم ﺑﮭﺎ ﺑدﻗﺔ )اﻟﻣدﺧﻼت واﻟﻣﺧرﺟﺎت(. ﺗﺻﻣﯾم اﻟﺧوارزﻣﯾﺔ :اﺧﺗﯾﺎر اﻻﺳﺗراﺗﯾﺟﯾﺔ اﻟﻣﻧﺎﺳﺑﺔ ﻟﺗﺻﻣﯾم اﻟﺧوارزﻣﯾﺔ ﻟﻠﺗﺄﻛد ﻣن ﺻﺣﺗﮭﺎ ،وﻛﻔﺎءﺗﮭﺎ ،وﻣﺳﺗوى .2 ﺗﻌﻘﯾدھﺎ ،وﻓﻌﺎﻟﯾﺗﮭﺎ. ﻛﺗﺎﺑﺔ اﻟﺑرﻧﺎﻣﺞ ﺑﺄﺣد ﻟﻐﺎت اﻟﺑرﻣﺟﺔ :اﻟﺗﻧﻔﯾذ اﻟﺻﺣﯾﺢ واﻟﻛفء ﻟﻠﺧوارزﻣﯾﺔ ﺑﺎﺧﺗﯾﺎر ﻟﻐﺔ اﻟﺑرﻣﺟﺔ اﻟﻣﻧﺎﺳﺑﺔ ،ھﻧﺎ ﻧﺄﺧذ .3 ﺑﻌﯾن اﻻﻋﺗﺑﺎر ﺻﺣﺔ اﻟﺑرﻧﺎﻣﺞ ،وﻛﻔﺎءﺗﮫ ،ﻣﺗطﻠﺑﺎت اﻟﺗﺧزﯾن ،وﻗﺎﺑﻠﯾﺔ اﻟﻧﻘل ،ﻛل ﺧوارزﻣﯾﺔ ﯾﺗم ﺗﻧﻔﯾذھﺎ ﺑﺷﻛل أﻓﺿل ﺑﻠﻐﺔ ﺑرﻣﺟﯾﺔ ﻣﻌﯾﻧﮫ. اﺧﺗﺑﺎر اﻟﺑرﻧﺎﻣﺞ :ﻧﺗﺄﻛد أن اﻟﺑرﻧﺎﻣﺞ ﯾ ُﻧﺗﺞ اﻟﻧﺗﺎﺋﺞ اﻟﻣﺗوﻗﻌﺔ واﻟﻣطﻠوﺑﺔ وأن ﻛﻔﺎءﺗﮫ ﺿﻣن اﻟﺣدود اﻟﻣﺗوﻗﻌﺔ. .4 ﺗوﺛﯾق اﻟﺑرﻧﺎﻣﺞ :ﻛﺗﺎﺑﺔ وﺗوﺛﯾق ﺷرح ﻣﻔﺻل ﻟطرﯾﻘﺔ ﻋﻣل اﻟﺧوارزﻣﯾﺔ ﺑﮭدف اﻟرﺟوع اﻟﯾﮭﺎ ﻻﺣﻘﺎ ً. .5 ﻟﺗطوﯾر اﻟﺑرﻣﺟﯾﺎت ﻧﺣﺗﺎج اﻟﻰ ﻣﺗﺧﺻص ﻓﻲ ﻋﻠم اﻟﺣﺎﺳب ﻟﯾﺗﻣﻛن ﻣن ﺗﻧﻔﯾذ ﻣﺎ ﯾﻠﻲ: اﺧﺗﯾﺎر اﻟﺧوارزﻣﯾﺔ اﻟﻣﻧﺎﺳﺑﺔ. .1 اﻟﺗﺣﻘق ﻣن ﺻﺣﺔ اﻟﺧوارزﻣﯾﺔ. .2 ﻛﺗﺎﺑﺔ اﻟﺧوارزﻣﯾﺔ ﻋﻠﻰ ھﯾﺋﺔ ﺑرﻧﺎﻣﺞ. .3 اﻟﺗﺣﻘق ﻣن ﺻﺣﺔ اﻟﺑرﻧﺎﻣﺞ. .4 ﻋﻨﺪ ﺗﻄﻮﯾﺮ اﻟﺒﺮﻣﺠﯿﺎت ﻓﺈن اﻟﺤﺎﺳﻮب ھﻮ ﻣﻦ ﯾﻘﻮم ﺑﺘﻨﻔﯿﺬ اﻟﻌﻤﻞ وﺑﺎﻟﺘﺎﻟﻲ ﯾﺠﺐ وﺻﻒ اﻟﺨﻮارزﻣﯿﺔ ﺑﻠﻐﺔ ﯾﻔﮭﻤﮭﺎ اﻟﺤﺎﺳﻮب وھﺬا ﻣﺎ ﯾﺴﻤﻰ ﺗﺤﻮﯾﻞ اﻟﺨﻮارزﻣﯿﺔ اﻟﻰ ﻟﻐﺔ ﺑﺮﻣﺠﺔ ﯾﻔﮭﻤﮭﺎ اﻟﺤﺎﺳﺐ ،وﻟﺬﻟﻚ ﻧﻘﻮل ان اﻟﺒﺮﻧﺎﻣﺞ ﻋﺒﺎره ﻋﻦ ﺗﻤﺜﯿﻞ ﻟﻠﺨﻮارزﻣﯿﺔ ﺑﺎﺳﺘﺨﺪام ﻟﻐﺔ ﺑﺮﻣﺠﺔ ﻣﺜﻞ ،PASCAL ،FORTRAN ،Java ،C + + ،Cوﻟﻛن اﻟﺣﺎﺳب ﻻ ﯾﻔﮭم ﻟﻐﺎت اﻟﺑرﻣﺟﺔ ﻣﺑﺎﺷرة وﻟذا ﯾﺗم ﺗرﺟﻣﺗﮭﺎ اﻟﻰ ﻟﻐﺔ اﻟﺣﺎﺳوب وھﻲ اﻟﻠﻐﺔ اﻟﺛﻧﺎﺋﯾﺔ ﻣن ﺧﻼل ﻣﺗرﺟم ﺧﺎص ﺑﻛل ﻟﻐﺔ. ﺗﺗطﻠب ﻋﻣﻠﯾﺔ ﺗﻣﺛﯾل اﻟﺧوارزﻣﯾﺔ ﺑﻠﻐﺔ ﺑرﻣﺟﺔ ﻣﻌﯾﻧﮫ اﻟﻰ اﻟﺧطوات اﻟﺗﺎﻟﯾﺔ: .1اﺧﺗﯾﺎر ﻟﻐﺔ اﻟﺑرﻣﺟﺔ اﻟﻣﻧﺎﺳﺑﺔ. .2ﺗﺧطﯾط ھﯾﻛل اﻟﺑرﻧﺎﻣﺞ. .3اﻟﺗﺧطﯾط ﻻﻛﺗﺷﺎف اﻷﺧطﺎء واﻹﺑﻼغ ﻋﻧﮭﺎ. .4اﺧﺗﺑﺎر اﻟﺑرﻧﺎﻣﺞ. .5ﺗوﺛﯾق اﻟﺑرﻧﺎﻣﺞ. .6إدارة ﺗطوﯾر اﻟﺑراﻣﺞ اﻟﻛﺑﯾرة. .7اﺧﺘﺒﺎر ﺟودة اﻟﺑراﻣﺞ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 20 اﻟﻔﺼﻞ اﻟﺮاﺑﻊ ﺣﻞ اﻟﻤﺸﺎﻛﻞ ﺑﺎﺳﺘﺨﺪام اﻟﺤﺎﺳﻮب اﻷھﺪاف اﻟﺘﻔﺼﯿﻠﯿﺔ :أن ﯾﺘﻤﻜﻦ اﻟﻤﺘﺪرب ﻣﻦ ﻣﻔﮭوم ﺣل اﻟﻣﺷﻛﻼت. ﺧطوات ﺣل اﻟﻣﺷﻛﻠﺔ. ﺗﺣدﯾد اﻟﻣﺷﻛﻠﺔ. ﺗطوﯾر ﻧﻣوذج ﻟﺣل اﻟﻣﺷﻛﻠﺔ. ﺗﺻﻣﯾم اﻟﺧوارزﻣﯾﺔ *.اﻣﺛﻠﺔ ﻋﻠﻰ اﻟﺧوارزﻣﯾﺎت. اﻟﺗﺣﻘق ﻣن ﺻﺣﺔ اﻟﺧوارزﻣﯾﺔ *.اﻣﺛﻠﺔ. اﻟﺘﻌﺮف ﻋﻠﻰ ﻣﻔﮭﻮم ﺣﻞ اﻟﻤﺸﻜﻼت ﺣﻞ اﻟﻤﺸﻜﻼت ﺑﺎﺳﺘﺨﺪام اﻟﺤﺎﺳﺐ ﻣﮭﻤﺔ ﺷﺎﻗﺔ ﻟﻠﻐﺎﯾﺔ ،وذﻟﻚ ﻷﻧﮭﺎ ﺗﺘﻄﻠﺐ ﺗﻔﻜﯿﺮ ﻋﻤﯿﻖ وﺗﺨﻄﯿﻂ دﻗﯿﻖ واھﺘﻤﺎم ﺑﺎﻟﺘﻔﺎﺻﯿﻞ.ﺑﺎﻹﺿﺎﻓﺔ اﻟﻰ ذﻟﻚ ﯾﺠﺐ ﻣﺮاﻋﺎت اﻻﻓﺘﻘﺎر اﻟﻰ اﻟﺠﺎﻧﺐ اﻹﺑﺪاﻋﻲ ﻓﻲ ﺗﻨﻔﯿﺬ اﻟﺤﻞ ﻣﻦ ﻗﺒﻞ اﻟﻮﻛﯿﻞ )اﻵﻟﺔ(.ﻋﻨﺪ ﺣﻞ اﻟﻤﺸﺎﻛﻞ ﺑﺎﺳﺘﺨﺪام اﻟﺤﺎﺳﻮب ،ﯾﺟب ان ﻧدرك اﻧﻧﺎ ﻧ ُﻌﻠم ﺧﺎدًﻣﺎ آﻟﯾﺎ ً ﻻﻋﻘل ﻟﮫ ﻛﯾﻔﯾﺔ اﻟﻘﯾﺎم ﺑﻌﻣل ﻣﺎ.وﻗد اوردﻧﺎ ﻓﻲ اﻟﻔﺻل اﻟﺳﺎﺑق أن وﺻف ﻛﯾﻔﯾﺔ اﻟﻘﯾﺎم ﺑﻣﮭﻣﮫ ﻣﺎ ﯾﺗم ﻛﺗﺎﺑﺗﮫ ﻋﻠﻰ ھﯾﺋﺔ ﺧوارزﻣﯾﺔ ،وﻟﻛن ﯾﺟب أن ﻧﺄﺧذ ﺑﻌﯾن اﻻﻋﺗﺑﺎر داﺋًﻣﺎ ﻗدرات وﻗﯾود اﻟوﻛﯾل اﻟُﻣﻧﻔذ ﻟﻠﺣل )اﻟﺣﺎﺳوب(. ﻣﺜﺎل: ﯾﺘﻌﻠﻢ اﻷطﻔﺎل رﺑﻂ أﺣﺬﯾﺘﮭﻢ ﻣﻦ ﺧﻼل اﻟﻤﻼﺣﻈﺔ واﻟﺘﻘﻠﯿﺪ ﻓﻲ ﺳﻦ اﻟﺨﻤﺴﺔ أﻋﻮام ﺗﻘﺮﯾﺒﺎ ً ،ﺣﺎول وﺻﻒ اﻟﻌﻤﻠﯿﺔ ﻓﻲ ﺷﻜﻞ ﺧﻮارزﻣﯿﺔ ﺷﻔﮭﯿﺎ ً دون اﻻﺳﺘﻌﺎﻧﺔ ﺑﺎﻟﺼﻮر او اﻟﺮﺳﻮﻣﺎت. ﻧﻼﺣظ اﻟﻣﺷﻛﻠﺔ واﺿﺣﺔ ،وﻟﻛن ﺧطوات ﺣل اﻟﻣﺷﻛﻠﺔ ﻟﯾﺳت ﻛذﻟك. ﻋﻧدﻣﺎ ﻧؤدي ﻧﺣن اﻟﺑﺷر أي ﻣﮭﻣﮫ ﻓﺈﻧﻧﺎ ﻧؤدي ﻛﺛﯾر ﻣن اﻟﺧطوات دون وﻋﻲ وإدراك ﻟﺗﻔﺎﺻﯾل اﻟﻣﮭﻣﺔ ،ﻓﺎﻟﻌدﯾد ﻣن اﻟﺧطوات ﯾﺗم ﺗﻧﻔذھﺎ ﺑﺗﻠﻘﺎﺋﯾﺔ.ﻋﻠﻰ اﻟﻧﻘﯾض ﻣن ذﻟك ،ﻋﻧدﻣﺎ ﯾﺗم ﺗﻧﻔﯾذ ﺣل اﻟﻣﺷﻛﻠﺔ ﻣن ﺧﻼل اﻟﺣﺎﺳب ﺟﻣﯾﻊ اﻟﺧطوات ﯾﺗم ﺗﻧﻔﯾذھﺎ ﺑﻧﺎًء ﻋﻠﻰ ﺗوﺟﯾﮫ ﻣﺳﺑق ،وﻟذا ﯾﺟب ﺗﺿﻣﯾن ﺟﻣﯾﻊ اﻟﺧطوات ،اﻟواﺿﺣﺔ واﻟﻐﺎﻣﺿﺔ ﻋﻠﻰ ﺣد ﺳواء ،ﻓﻲ اﻟﺧوارزﻣﯾﺔ.ﻣن اﻟﻣﮭم ﻓﮭم اﻟﻣﺷﻛﻠﺔ ﺑﻌﻣق ﻟﺗﺻﻣﯾم ﺧوارزﻣﯾﺔ ﺟﯾدة ﯾﺗم ﺗﻧﻔﯾذھﺎ ﻣن ﻗﺑل اﻟﺣﺎﺳب.وھذا ﯾﻌﻧﻲ اﻧﻧﺎ ﯾﺟب ان ﻧﺣﻠل اﻟﻣﺷﻛﻠﺔ ﻗﺑل ﺗﺻﻣﯾم اﻟﺧوارزﻣﯾﺔ. ﺧﻄﻮات ﺣﻞ اﻟﻤﺸﻜﻠﺔ ﺑﺎﺳﺘﺨﺪام اﻟﺤﺎﺳﻮب اوردﻧﺎ ﻓﻲ اﻟﻔﺻل اﻟﺳﺎﺑق ﺧطوات ﺣل اﻟﻣﺷﻛﻼت ﺑﺎﺳﺗﺧدام اﻟﺣﺎﺳوب ،وﺳﻧذﻛرھﺎ ھﻧﺎ ﺑﺈﯾﺟﺎز ﻟﯾﺗم ﺗوﺿﯾﺢ ﻛﻼً ﻣﻧﮭﺎ ﺑﺎﻟﺗﻔﺻﯾل. ﺧطوات ﺣل اﻟﻣﺷﻛﻠﺔ ﺑﺎﺳﺗﺧدام اﻟﺣﺎﺳوب: .1ﺗﻌرﯾف اﻟﻣﺷﻛﻠﺔ وﺗﺣﻠﯾﻠﮭﺎ. .2ﺗطوﯾر ﻧﻣوذج ﻟﺣل اﻟﻣﺷﻛﻠﺔ. .3ﺗﺻﻣﯾم اﻟﺧوارزﻣﯾﺔ. .4اﻟﺗﺣﻘق ﻣن ﺻﺣﺔ اﻟﺧوارزﻣﯾﺔ. .5ﻛﺗﺎﺑﺔ اﻟﺧوارزﻣﯾﺔ ﺑﺄﺣد ﻟﻐﺎت اﻟﺑرﻣﺟﺔ. .6دراﺳﺔ وﺗﺣﻠﯾل ﻣﺳﺗوى ﺗﻌﻘﯾد اﻟﺧوارزﻣﯾﺔ. .7اﺧﺗﺑﺎر اﻟﺑرﻧﺎﻣﺞ. .8ﺗوﺛﯾق اﻟﺑرﻧﺎﻣﺞ. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 21 -١ﺗﻌرﯾف اﻟﻣﺷﻛﻠﺔ وﺗﺣﻠﯾﻠﮭﺎ أول ﻣﺎ ﯾﺟب اﻟﻘﯾﺎم ﺑﮫ ھو ﻓﮭم ﻣﺗطﻠﺑﺎت اﻟﻣﺷﻛﻠﺔ ﺑوﺿوح ،وﻟذا ﯾﺟب ان ﻧﺳﺄل أﺳﺋﻠﺔ ﺗﺳﺎﻋدﻧﺎ ﻓﻲ ﺗﺣﻠﯾل اﻟﻣﺷﻛﻠﺔ و ﻓﮭﻣﮭﺎ، وﺗﺄﺗﻲ اﻹﺟﺎﺑﺎت ﻋﻠﻰ ھذه اﻷﺳﺋﻠﺔ ﻣن ُﻣﻧﺷﺊ اﻟﻣﺷﻛﻠﺔ.ﻓﺈن ﻛﺎن ُﻣﻧﺷﺊ اﻟﻣﺷﻛﻠﺔ ﻧﺣن ﻓﯾﺟب ان ﻧطرح أﺳﺋﻠﺔ وﻧﺟﯾب ﻋﻠﯾﮭﺎ ﺣﺗﻰ ﺻﺎ آﺧر ،ﻓﻌﻠﯾﻧﺎ إﺟراء ﻣﻘﺎﺑﻠﺔ ﻣﻌﮫ واﺳﺗﻧﺑﺎط إﺟﺎﺑﺎت ﻟﮭذه اﻷﺳﺋﻠﺔ ﺣﺗﻰ ﻧﺗﻣﻛن ﻣن ﺗﺗﺿﺢ اﻟﻣﺷﻛﻠﺔ ،وإذا ﻛﺎن ﻣﻧﺷﺊ اﻟﻣﺷﻛﻠﺔ ﺷﺧ ً ً ﺗﻌرﯾف اﻟﻣﺷﻛﻠﺔ وﻓﮭﻣﮭﺎ ﺑوﺿوح.ﻓﻲ ھذه اﻟﻣرﺣﻠﺔ ﯾﺟب ان ﻧﻌرف وﻧﺣدد ﺗﻣﺎﻣﺎ ﻣﺎ ﯾﺟب اﻟﻘﯾﺎم ﺑﮫ ﺑﻐض اﻟﻧظر ﻋن ﻛﯾﻔﯾﺔ اﻟﻘﯾﺎم ﺑﮫ ،أي ﯾﺟب ان ﻧﺗﻣﻛن ﻣن ﻓﮭم اﻟﻣﺷﻛﻠﺔ واﺳﺗﻧﺑﺎط اﻟﺧطوات واﻟﻣﮭﻣﺎت اﻟﻣطﻠوﺑﺔ ﻟﺣﻠﮭﺎ وﻟﯾس ﻣن اﻟﺣﻛﻣﺔ ان ﻧﺑدأ ﺑﺗﻧﻔﯾذ اﻟﺣل ﻣﺑﺎﺷرة ﻗﺑل ﺗﺣدﯾد ﺧطوات اﻟﺣل ﺑوﺿوح. ﻟﻔﮭم اﻟﻣﺷﻛﻠﺔ ﺑدﻗﺔ ﯾﺟب ان ﻧطرح اﻷﺳﺋﻠﺔ اﻟﺻﺣﯾﺣﺔ ،ادﻧﺎه ﻣﺟﻣوﻋﮫ ﻣن اﻷﺳﺋﻠﺔ اﻟﺗﻲ ﻧﻘﺗرح طرﺣﮭﺎ ﻟﻔﮭم اﻟﻣﺷﻛﻼت: .1ھل ﻧﻔﮭم اﻟﻣﺻطﻠﺣﺎت اﻟواردة ﻓﻲ وﺻف اﻟﻣﺷﻛﻠﺔ؟ ﻗد ﺗﻛون اﻟﻣﺷﻛﻠﺔ ﻓﻲ ﻣﺟﺎل او ﺗﺧﺻص ﻣﻌﯾن وﻟﮫ ُﻣﻔرداﺗﮫ اﻟﺧﺎﺻﺔ ﺑﮫ ﻣﺛل اﻟﻣﺻطﻠﺣﺎت اﻟﺧﺎﺻﺔ ﺑﺎﻟﻣﺷﺎﻛل اﻟﺗﻘﻧﯾﺔ او اﻟطﺑﯾﺔ. ھل ﻓﮭﻣﻧﺎ ﻣﺎذا ﺗﻌﻧﻲ ھذه اﻟﻣﺻطﻠﺣﺎت ﺟﯾدا ً؟ ﻋﻠﻰ اﻷﻗل ﺑﻣﺎ ﯾﻛﻔﻲ ﻟﺗطوﯾر اﻟﺧوارزﻣﯾﺔ؟ .2ﻣﺎ ھﻲ اﻟﻣﻌﻠوﻣﺎت اﻟﻣوﺿﺣﺔ ﻓﻲ وﺻف اﻟﻣﺷﻛﻠﺔ؟ ﻣﺎ ھﻲ ﺑﺎﻟﺿﺑط اﻟﺑﯾﺎﻧﺎت واﻟﺷروط واﻟﺣﺎﻻت اﻟﻣطﻠوب ﺣﻠﮭﺎ؟ ﻣﺎ ھﻲ اﻟﻣدﺧﻼت إﻟﻰ اﻟﺧوارزﻣﯾﺔ؟ .3ﻣﺎ اﻟﻧﺗﯾﺟﺔ اﻟﻣطﻠوب اﻟﺣﺻول ﻋﻠﯾﮭﺎ؟ ﻣﺎھﻲ اﻟﻣﺧرﺟﺎت اﻟﻣﺗوﻗﻌﺔ واﻟﻣرﻏوﺑﺔ ﻣن اﻟﺧوارزﻣﯾﺔ واﻟﺑرﻧﺎﻣﺞ؟ .4ﻛﯾف ﻧﺗﻌرف ﻋﻠﻰ اﻟﺣل اﻟﺻﺣﯾﺢ؟ ﯾﺟب أن ﻧﻌرف ﻛﯾف ﯾﺗم ﺗﺣدد اﻟﺣل اﻟﺻﺣﯾﺢ ﺑدﻗﺔ ،ﺣﺗﻰ ﻧﺗﻣﻛن ﻣن ﺗوﺿﯾﺣﮫ ﻓﻲ اﻟﺧوارزﻣﯾﺔ ﻛﻲ ﺗﺗﻌرف ﻋﻠﻰ اﻟﺣل اﻟﺻﺣﯾﺢ وﺗرﻓض اﻟﺣﻠول اﻟﺧﺎطﺋﺔ أو ﻏﯾر ﻓﻌّﺎﻟﺔ. .5ﻣﺎ ھﻲ اﻟﻣﻌﻠوﻣﺎت اﻟﻣطﻠوﺑﺔ ﻻﺧﺗﯾﺎر وﺗﻌرﯾف اﻟﺧوارزﻣﯾﺔ؟ ﻗد ﻻ ﯾﻛون ﺗﻌرﯾف اﻟﻣﺷﻛﻠﺔ اﻟﺳﺎﺑق ﻛﺎﻓﻲ ﻟﺗﺻﻣﯾم اﻟﺧوارزﻣﯾﺔ ،اﯾﺿﺎ ً ﺗﻌرﯾف اﻟﺑﯾﺎﻧﺎت اﻟُﻣدﺧﻠﺔ اﻟﻰ اﻟﺧوارزﻣﯾﺔ ﻻ ﯾﺣدد ﺑﺎﻟﺿﺑط اﻟﻣﻌﻠوﻣﺎت اﻟﻼزﻣﺔ ﻟﺗﺻﻣﯾم اﻟﺧوارزﻣﯾﺔ ذاﺗﮭﺎ ،او ﻗد ﯾﻛون ھﻧﺎك ﻏﻣوض وﻟﺑس ﻓﻲ ﺷرح ﻣدﺧﻼت اﻟﺧوارزﻣﯾﺔ. .6ھل ﺗم ذﻛر ﻣﻌﻠوﻣﺎت ﻻ ﻗﯾﻣﺔ ﻟﮭﺎ؟ ﻓﻲ ﺑﻌض اﻷﺣﯾﺎن ُﻣﻧﺷﺊ اﻟﻣﺷﻛﻠﺔ ﯾذﻛر ﻣﻌﻠوﻣﺎت ﻟﯾﺳت ذات ﺻﻠﺔ وﯾﺟب اﻻﺳﺗﻐﻧﺎء ﻋﻧﮭﺎ.ﻣﺛﺎل ﻟو ذھﺑت اﻟﻰ اﻟطﺑﯾب ﺗﺷﻛو ﻣن ﺻداع وذﻛرت اﻟﻣﺷﻛﻠﺔ ﺑﮭذا اﻟﺷﻛل " ﯾﺎد ﻛﺗور اﺷﻌر ﺑﺻداع ﺷدﯾد ﺣﯾث ﻛﻧت ارﺗدي ﻟﺑﺎس ﺑﻧﻔﺳﺟﻲ ﻟﯾﻠﺔ اﻟﺑﺎرﺣﺔ وﻛﺎن ﻟدﯾﻧﺎ ﻋدد ﻗﻠﯾل ﻣن اﻟﺿﯾوف ﺟﺎءوا ﻣن ﻣﻛﺎن ﺑﻌﯾد وھذا اﻟﺻداع اﺳﺗﻣر طﯾﻠﺔ ﺗﺣﺿﯾر اﻟطﻌﺎم وﺑﺎﻟرﻏم ﻣن ان اﻟطﻌﺎم ﻧﺎل اﺳﺗﺣﺳﺎن اﻟﺟﻣﯾﻊ ،وﻟﻛن اﻟﺻداع ﻟم ﯾﻔﺎرﻗﻧﻲ إﻻ ﺑﻌد ﻣﻐﺎدرة اﻟﺿﯾوف" ،ﻣﺎ اﻟﺧطﺄ ﻓﻲ رأﯾك؟ .7ﻣﺎ اﻻﻓﺗراﺿﺎت اﻟﺗﻲ ﺗم اﻟﻌﻣل ﺑﮭﺎ؟ ﻏﺎﻟﺑﺎ ً ﯾﻛون ھﻧﺎك ﺑﻌض اﻻﻓﺗراﺿﺎت ﻏﯾر ﻣذﻛورة ،ﺣﺗﻰ ﻣﻧﺷﺊ اﻟﻣﺷﻛﻠﺔ ﻻ ﯾدرﻛﮭﺎ ،وﻟﻛن ﯾﺟب ﺗﺣدﯾدھﺎ واﺧذھﺎ ﺑﻌﯾن اﻻﻋﺗﺑﺎر أﺛﻧﺎء ﺗطوﯾر اﻟﺧوارزﻣﯾﺔ.ﻋﻠﻰ ﺳﺑﯾل اﻟﻣﺛﺎل" ،اﻛﺗب داﻟﺔ ﺗﺄﺧذ ﻋدد ﺻﺣﯾﺢ وﺗﺧرج ﻣﺿروب ھذا اﻟﻌدد " ھﻧﺎ ﻟم ﯾوﺿﺢ أن ﺿﺎ ،اﻻﻓﺗراض ﺑﺄن اﻟداﻟﺔ ﺗﺄﺧذ ﻓﻘط اﻟﻣدﺧﻼت اﻟﺻﻐﯾرة ﻧﺳﺑﯾًﺎ )ﻣﺛل 20أو ﻧﺣو اﻟﻌدد اﻟﺻﺣﯾﺢ ﻣوﺟب ،ﻟﻛن اﻓﺗرض ذﻟك.أﯾ ً ذﻟك( ﻏﯾر ﻣذﻛور ﻣن ِﻗﺑل ُﻣﻧﺷﺊ اﻟﻣﺷﻛﻠﺔ ،وﻟﻛن اﻓﺗرض ذﻟك. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 22 ھﻧﺎك اﻟﻌدﯾد ﻣن اﻷﺳﺋﻠﺔ اﻟﻣﻣﻛن طرﺣﮭﺎ ﺣﺳب طﺑﯾﻌﺔ وﻧوع اﻟﻣﺷﻛﻠﺔ.اوردﻧﺎ أﻋﻼه أﺑرز اﻷﺳﺋﻠﺔ اﻟﻣﻧﺎﺳﺑﺔ ﻟﻣﻌظم اﻟﻣﺷﺎﻛل. ﻧﺄﺧذ ھﻧﺎ ﻣﺛﺎل ﻣﺷﻛﻠﺔ ﺷﮭﯾرة ﺗﺳﻣﻰ ﻣﺷﻛﻠﺔ اﻟﺑﺎﺋﻊ اﻟﻣﺗﺟول ،TSPھﻲ ﻣﺷﻛﻠﺔ ﻣﻌﻘدة اﻟﻰ ﺣد ﻣﺎ ،وﻟﻛن ﯾﻣﻛن اﺳﺗﻌراﺿﮭﺎ ﺑﺷﻛل ﻣﺑﺳط ﻻﺳﺗﺧداﻣﮭﺎ ﻛﻣﺛﺎل. ﻣﺷﻛﻠﺔ ﻣﻧدوب اﻟﻣﺑﯾﻌﺎت اﻟﻣﺗﺟول ):(Travelling salesman problem ﺧﺎﻟد ﻣﻧدوب ﻣﺑﯾﻌﺎت ﯾﺗﺟول ﻓﻲ ﻋدة ﻣدن وﯾﺧﺗص ﺑﺑﯾﻊ أﺟﮭزة اﻟﺣﺎﺳب اﻵﻟﻲ.ﯾﺑﯾﻊ ﺧﺎﻟد اﻷﺟﮭزة ﻓﻲ ٢٠ﻣدﯾﻧﺔ وﻣﺣﺎﻓظﺔ ﻓﻲ ﻣﻧطﻘﺗﮫ.ﯾﺣﺻل ﻋﻠﻰ ﻋﻣوﻻت ﻋﺎﻟﯾﺔ ﻟﻛل ﺻﻔﻘﺔ ﯾﻌﻘدھﺎ ﺧﻼل ﺟوﻻﺗﮫ ،وﻟﻛن اﻟﺷرﻛﺔ ﺗﻌوﺿﮫ ﻋن ٪٥٠ﻣن ﺗﻛﺎﻟﯾف ﺳﻔرة ﺑﯾن ھذه اﻟﻣدن واﻟﻣﺣﺎﻓظﺎت.ﻗرر ﺧﺎﻟد اﻋداد ﺟدول ﯾﺳﺟل ﻓﯾﮫ ﺗﻛﺎﻟﯾف اﻟﺳﻔر ﺑﯾن ﻣدﯾﻧﺗﯾن ﻓﻲ ﻣﻧطﻘﺗﮫ ،وﯾود ان ﯾﻘﻠل ﻗدر اﻹﻣﻛﺎن ﻣن ﺗﻛﺎﻟﯾف اﻟﺳﻔر اﻟﻰ أدﻧﻲ ﺣد ﻣﻣﻛن. ﻧﻼﺣظ اﻧﮫ ﯾوﺟد ﻟدﯾﻧﺎ ٢٠ﻣدﯾﻧﺔ وﯾﻣﻛن ﺗﺳﺟﯾل ﺗﻛﻠﻔﺔ اﻻﻧﺗﻘﺎل ﻣن ﻣدﯾﻧﺔ اﻟﻰ أﺧرى ﻓﻲ ﻣﺻﻔوﻓﺔ ﺑﺣﺟم ٢٠ X ٢٠ ﻧﺳﻣﯾﮭﺎ ﻣﺻﻔوﻓﺔ اﻟﺗﻛﻠﻔﺔ واﻟﺗﻲ ﺗوﺿﺢ ﺗﻛﻠﻔﺔ اﻻﻧﺗﻘﺎل ﻣن ﻣدﯾﻧﺔ اﻟﻰ أﺧرى. ﻧﺳﺗطﯾﻊ ﺗﺣﻠﯾل اﻟﻣﺷﻛﻠﺔ ﻣن ﺧﻼل ﻣﺎ ﺗﻌﻠﻣﻧﺎه ﻣن اﻷﺳﺋﻠﺔ اﻟﺳﺎﺑﻘﺔ: ﻧرﯾد ﺗطوﯾر ﺧوارزﻣﯾﺔ ﯾﻣﻛﻧﮭﺎ اﻟﺗﻌﺎﻣل ﻣﻊ أي ﻋدد ﻣن اﻟﺑﯾﺎﻧﺎت )اﻟﻣدن( وﻟﯾس ﻋدد ﺛﺎﺑت ،ﻣﺛل ٢٠ﻣدﯾﻧﺔ.ﻛﻣﺎ ﯾﺟب ان ﺗﻛون اﻟﺧوارزﻣﯾﺔ ﻋﺎﻣﺔ أي ﯾﺟب ان ﺗﻌطﻲ ﻧﺗﯾﺟﺔ ﻷي ﻣﺟﻣوﻋﺔ ﻣن اﻟﺑﯾﺎﻧﺎت )اﻟﻣدن( وﻟﯾس ﻓﻘط اﻟﺑﯾﺎﻧﺎت اﻟﺗﻲ ﻗدﻣﮭﺎ ﺧﺎﻟد.وذﻟك ﻷن ﻣﺻﻔوﻓﺔ اﻟﺗﻛﻠﻔﺔ ﯾﻣﻛن ان ﺗﺗﻐﯾر ﻣﻊ ﻣرور اﻟزﻣن ﻛﻣﺎ ﯾﻣﻛن إﺿﺎﻓﺔ اﻟﻣزﯾد ﻣن اﻟﻣدن اﻟﻰ اﻟﻣﻧطﻘﺔ اﻟﺧﺎﺻﺔ ﺑﺧﺎﻟد. ﻟﺗﺣدﯾد ﺗﻛﺎﻟﯾف اﻟﺳﻔر ﻟﺧﺎﻟد اﻟﻰ أدﻧﻲ ﺣد ﻣﻣﻛن ،ﺳﻧطرح ﻋﻠﯾﮫ ﻋدة أﺳﺋﻠﺔ واﻟﺗﻲ ﺳﺗؤﺛر ﻋﻠﻰ اﻟﺧوارزﻣﯾﺔ ،ﻧﺟد ان ﺧﺎﻟد ﯾزور ﻛل ﻣدﯾﻧﺔ ﻣرة واﺣدة ﻓﻘط ﺧﻼل اﻟﺟوﻟﺔ.ھل ﻟدﯾﺔ ﻣدﯾﻧﺔ ﻣﻔﺿﻠﺔ؟ ﻻ ،ھل أﺣد اﻟﻣدن ﻣﺣل إﻗﺎﻣﺗﮫ؟ ﻧﻌم. اذن اﻟﺧوارزﻣﯾﺔ اﻟﻣطﻠوﺑﺔ ﯾﺟب ان ﺗوﺿﺢ ﺳﻠﺳﻠﺔ اﻟﻣدن اﻟﻣطﻠوب زﯾﺎرﺗﮭﺎ ﻣرة واﺣدة ﺑدًء ﻣن اﻟﻣدﯾﻧﺔ )أ( وﻣﻧﺗﮭﯾﺔ ﺑﮭﺎ ﺑﺣﯾث ﺗﻛون اﻟﺗﻛﻠﻔﺔ اﻻﺟﻣﺎﻟﯾﺔ ﻟﻠﺳﻔر ﺑﯾن اﻟﻣدن أدﻧﻲ ﻗﯾﻣﺔ.ﻧﺎﺗﺞ اﻟﺧوارزﻣﯾﺔ ھو ﺗﺳﻠﺳل ﻣﻧظم ﻟﻠﻣدن واﻟﺗﻛﻠﻔﺔ اﻹﺟﻣﺎﻟﯾﺔ. اﻵن أﺻﺑﺣت اﻟﻣﺷﻛﻠﺔ واﺿﺣﺔ ،ﻧﻧﺗﻘل ﻟﻠﺧطوة اﻟﺗﺎﻟﯾﺔ. -٢ﺗطوﯾر ﻧﻣوذج ﻟﺣل اﻟﻣﺷﻛﻠﺔ ﺑﻌد ﻓﮭم اﻟﻣﺷﻛﻠﺔ ﯾﺟب ﺗطوﯾر ﻧﻣوذج رﯾﺎﺿﻲ ﻹﺟراء اﻟﺣﺳﺎﺑﺎت اﻟﻣطﻠوﺑﺔ ﺑﺣﯾث ﯾﻛون ﻣﻼﺋم ﻟﺣل اﻟﻣﺷﻛﻠﺔ.ﻣﻊ اﻷﺳف ﻻ ﯾوﺟد ﻗواﻋد ﻣﺣددة ﻓﻲ ھذه اﻟﺧطوة ،وﺗﻠﻌب اﻟﺧﺑرة دور رﺋﯾﺳﻲ ﻓﻲ ھذه اﻟﻣرﺣﻠﺔ. اوﻻً ﯾﺟب ان ﻧﺗﺳﺎءل ﻣﺎ اﻟﺳﯾﺎق اﻟﻣﻼﺋم ﻟﮭذه اﻟﻣﺷﻛﻠﺔ؟ وھﻧﺎ ﻻ ﻧﻘﺻد ﺗﻔﺎﺻﯾل ﺗﻧﻔﯾذ اﻟﻣﺷﻛﻠﺔ ،ﺑل اﻟﻣﻘﺻود ھو اﻟﮭﯾﻛل اﻟﻌﺎم ﻟﻠﺣل. داﺋﻣﺎ ً ﯾﺟب ان ﻧﺗذﻛر اﻟﻘﺎﻋدة اﻟﺗﻲ ﺗﻘول ﻛﻠﻣﺎ أﺳرﻋت ﻓﻲ ﺗطوﯾر اﻟﻣﺷﻛﻠﺔ )ﻛﺗﺎﺑﺔ اﻟﺑرﻧﺎﻣﺞ( أﺻﺑﺢ وﻗت ﺗطوﯾر اﻟﺣل أطول ،ھذا ﺻﺣﯾﺢ ﻓﺈذا ﺑدأﻧﺎ ﺑﻛﺗﺎﺑﺔ اﻟﺣل ﺑﺄﺣد ﻟﻐﺎت اﻟﺑرﻣﺟﺔ دون ﺗﺧطﯾط ﻓﺳﯾﺗطﻠب ذﻟك وﻗت أطول. ﻣن أﻓﺿل اﻟطرق ﻟﻔﮭم اﻟﻣﺷﻛﻠﺔ ھﻲ اﺳﺗﺧدام اﻷﻣﺛﻠﺔ ﺑﺣﯾث ﻧﺄﺧذ ﻣﺛﺎل ُﻣﺻﻐر وﻧﻘوم ﺑﺗﺣﻠﯾﻠﮫ وﺗطوﯾر ﻧﻣوذج اﻟﺣل.ﻓﻲ ﻣﺛﺎل ﻣﻧدوب اﻟﻣﺑﯾﻌﺎت اﻟﺳﺎﺑق ﻛﺎن ﻣن اﻟﻣﻣﻛن أﺧذ ﻣﺷﻛﻠﺔ ﺻﻐﯾرة ﻣﺛل ان ﺗﺣﺗوي ﺧﻣﺳﺔ ﻣدن ﻓﻘط وﺣﺳﺎب اﻟﺗﻛﺎﻟﯾف وﺗطوﯾر ﻧﻣوذج اﻟﺣل ﻋﻠﻰ ھذا اﻟﻧطﺎق اﻟﺿﯾق وﻣن ﺛم ﯾﻣﻛن ﺗطوﯾر اﻟﺣل ﻋﻠﻰ ﻧطﺎق أﻛﺑر ﻟﺣل اﻟﻣﺷﻛﻠﺔ اﻟﻣطﻠوﺑﺔ ) ٢٠ﻣدﯾﻧﺔ( ،وﯾﺟب ان ﻧﻛون ﺣذرﯾن ﻋﻧد ﺣل اﻟﻣﺛﺎل اﻟُﻣﺻﻐر ﺑﺄن ﻻ ﻧﻌﺗﺑره ھو اﻟﺣل اﻟﻌﺎم ﻟﻠﻣﺷﻛﻠﺔ اﻷﺳﺎﺳﯾﺔ.ﻛﻣﺎ ﯾﺟب ان ﻧﺳﺗﻌﯾن ﺑﺧﺑراﺗﻧﺎ اﻟﺳﺎﺑﻘﺔ واﻻﺳﺗﻔﺎدة ﻣن اﻟﻣﺷﺎﻛل اﻟﻣﺷﺎﺑﮭﺔ اﻟﺗﻲ ﺗم ﺗطوﯾرھﺎ ﻣﺳﺑﻘﺎ ً.وﻋﻠﻰ اﻟﺧﺑراء ان ﯾﻛوﻧوا ﻣﺳﺗﻌدﯾن ﻻﻛﺗﺷﺎف ﺣﻠول ﺟدﯾدة وﻋدم اﻻﻛﺗﻔﺎء ﺑﺎﻟطرق اﻟﻣﺳﺗﺧدﻣﺔ ﺳﺎﺑﻘﺎ ً ﻓﻘط. ھﻧﺎك اﻟﻌدﯾد ﻣن اﻻﺳﺗراﺗﯾﺟﯾﺎت اﻟﺷﮭﯾرة اﻟﻣﺳﺗﺧدﻣﺔ ﻓﻲ ﺣل اﻟﻣﺷﻛﻼت ،ﻛﻣﺎ ان ھﻧﺎك ﺧوارزﻣﯾﺎت ﻣﻛﺗوﺑﺔ ﺑﺎﺳﺗﺧدام ھذه اﻻﺳﺗراﺗﯾﺟﯾﺎت واﻟﺗﻲ ﺗﺳﺎﻋدﻧﺎ ﻓﻲ ﺗﻘﻠﯾل اﻟوﻗت اﻟﻣﺳﺗﻐرق ﻻﺧﺗﯾﺎر اﻟﮭﯾﻛل اﻟﻌﺎم ﻟﻠﺣل واﻟﺧوارزﻣﯾﺔ اﯾﺿﺎ ً. اﻋﺪاد اﻟﻤﺪرﺑﺔ :أ.ھﻨﺪ اﻟﺸﺘﻮي 23 ا ﺳ ﺘﺮ ا ﺗ ﯿ ﺠ ﯿ ﺎ ت ﻟ ﺤ ﻞ ا ﻟ ﻤ ﺸ ﻜ ﻼ ت : ﺴﺪ ) :(Divide-and-conquerﻣﻦ أﺷﮭﺮ اﻻﺳﺘﺮاﺗﯿﺠﯿﺎت اﻟﻤﺴﺘﺨﺪﻣﺔ -1اﺳﺘﺮاﺗﯿﺠﯿﺔ ﻓﺮق ﺗ ُ ﻟﺤﻞ اﻟﻤﺸﻜﻼت وﺗﻌﺘﻤﺪ ﻋﻠﻰ ﺗﻘﺴﯿﻢ اﻟﻤﺸﻜﻠﺔ اﻷﺳﺎﺳﯿﺔ اﻟﻰ ﻣﺸﻜﻠﺘﯿﻦ ﻓﺮﻋﯿﺘﯿﻦ ﺑﺤﯿﺚ ﺗﻜﻮن اﻟﻤﺸﺎﻛﻞ اﻟﻔﺮﻋﯿﺔ أﺳﮭﻞ ﻓﻲ اﻟﺤﻞ ،وﯾﻤﻜﻦ اﻻﺳﺘﻤﺮار ﻓﻲ ﺗﻘﺴﯿﻢ اﻟﻤﺸﺎﻛﻞ اﻟﻔﺮﻋﯿﺔ اﻟﻰ ﻣﺸﺎﻛﻞ ﻓﺮﻋﯿﺔ ﺣﺘﻰ ﯾﺼﺒﺢ ﻟﺪﯾﻨﺎ اﻟﻌﺪﯾﺪ ﻣﻦ اﻟﻤﺸﺎﻛﻞ اﻟﻔﺮﻋﯿﺔ اﻟﺼﻐﯿﺮة ﺳﮭﻠﺔ اﻟﺤﻞ ،وﻻ ﺟﺪوى ﻣﻦ ﺗﻘﺴﯿﻤﮭﺎ أﻛﺜﺮ ﻣﻦ ذﻟﻚ ﻟﺘﺒﺴﯿﻂ اﻟﻤﺸﻜﻠﺔ ،ﯾﺴﺎھﻢ ﺗﻘﺴﯿﻢ اﻟﻤﺸﻜﻠﺔ اﻷﺳﺎﺳﯿﺔ اﻟﻰ ﻋﺪة ﻣﺸﺎﻛﻞ ﺑﺘﺴﮭﯿﻞ اﻟﺤﻞ وزﯾﺎدة اﻟﻔﻌﺎﻟﯿﺔ. -2اﺳﺘﺮاﺗﯿﺠﯿﺔ اﻟﻤﻀﺎﻋﻔﺔ اﻟﺜﻨﺎﺋﯿﺔ ) :(Binary doublingھﻲ ﻋﻜﺲ اﻻﺳﺘﺮاﺗﯿﺠﯿﺔ ﻓﺮق ﺗ ُ ﺴﺪ وھﻲ ﺗﻘﻮم ﺑﺈﯾﺠﺎد ﺣﻞ ﻟﻤﺸﻜﻠﺔ ﻛﺒﯿﺮة ﻣﻦ ﺣﻠﻮل ﻣﺸﺎﻛﻞ ﻓﺮﻋﯿﺔ ﺻﻐﯿﺮة. ﺗﺮﺗﯿﺐ اﻷﻋﺪاد ﺗﺼﺎﻋﺪﯾﺎً )اﺳﺘﺮاﺗﯿﺠﯿﺔ