استثمر للحياة

مواضيعنا

البرمجة و الخوارزم

حجم الخط

investolife

يتناول الموضوع البرمجة بصفة عامة و لغات برمجة صفحات الويب كما يتناول الخوارزم و كيف يساعدنا فى وصف الحل لمشاكل البرمجة .... خذ نفس عميق و تابع معنا

البرمجة و الخوارزم

البرنامج " بصفة عامة "

هو عبارة عن مجموعة أو سلسلة من التعليمات التي يهدف منها تنفيد مهمة معينة في إطار زمني محدد .  ينطبق هذا على البرنامج التلفزيوني فهو يهدف لتوصيل رسالة اعلامية معينة في إطار زمني محدد .... و ايضا اذا قررنا الذهاب في رحلة  الى الاسكندرية "  هذه هي المهمة " لقضاء اسبوع   " الفترة الزمنية" .

 

 برنامج الكمبيوتر    ( Computer Program  

هو لفظ يطلق على أي سلسلة من التعليمات تقدم للكمبيوتر لتنفيذ مهمة محددة فى توقيت محدد ... فمثلا :  البرامج اللازمة لتشغيل الكمبيوتر و هي التي  تنظم عمل وحداته و تقوم بتعريفه بالشاشة و الطابعة و باقي ملحقاته . و ينطبق ايضاً على برنامج لعمل آلة حاسبة . أو دليل تلفونات شخصي  مثلاً .

 

الخوارزم

 

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

وسميت الخوارزمية بهذا الاسم نسبة إلى العالم المسلم أبو جعفر محمد بن موسى الخوارزمي الذي ابتكرها في القرن التاسع الميلادي. الكلمة المنتشرة في اللغات اللاتينية والأوروبية هي«algorithm» .

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

  • تحديد وسيلة المواصلات و حجزها ذهابا

  • حجز مكان الاقامة بما يناسب موعد السفر و العودة

  • تحديد اماكن الزيارات اثناء الرحلة

  • حجز تذاكر العودة

نلاحظ ان الخطوات مسلسلة أي مرتبة بشكل منطقي ... كما انها لا تخلو من الاختيار مثل اختيار وسيلة المواصلات ... و كذلك لا تخلو من التكرار ... كتكرار البحث عن وسيلة المواصلات او غيرها .

و هذه خسائص الخوارزم الثلاث :

  • التسلسل المنطقي  : يمكننا تن نقول لشخص ما " اهبط - بدون مظلة - من طائرة محلقة في السماء " وقتها سيفهم انه أمر غير منطقي فلا ينفذه .... لكن الكمبيوتر لا يفهم ما هو المنطقى لذا كان لابد ان يكتب الخوارزم على صورة  مجموعة من التعليمات المتسلسلة منطقياً .

  • الاختيار : نحتاج إلى اختبار بين البدائل .... يعني السفر فى الفطار أم في سيارة ... القطار ارخص و لكنه بطئ مثلا السيارة اسرع و لكنها مكلفة . وهذا ما يسمى بالاختيار أو اتخاذ القرار .

  • التكرار : قد نحتاج الى تكرار  نفس الخطوات عدد من المرات . كأن نصعد فى اسانسير مصلحة حكومية لا يتسع الا لعشرة افراد بينما المنتظرين 100 فرد . سيصعد المصعد حاملا 10 افراد ثم يعود لحمل 10 آخرين .... و هكذا حتى تنتهي الاعداد الموجودة ..  و يسمى هذا  التكرار .

 

 

خوارزم

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

الشفرة الوصفية(Pseudocode)

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

الخريطة الإنسيابية  Flowchart

هي مخطط بياني يسمى   تمثل خوارزم و  يوضح خطوات حل المشكلة من البداية إلى النهاية .

و تتميز الخريطة الإنسيابية  Flowchart بأنها توضح للمبرمج 4 نقاط اساسية و هي

  • التكرار   Looping

  • التفرع   Branching

  • الاختيار  Selection

  • التتابع    Sequence

 

 

 

 

 

مفردات الخريطة الانسيابية

استثمر للحياة

 

استخدام برنامج Word لرسم خرائط الانسياب

تابع موضوع الخوارزم و البرمجة الذكية

بعض الامثلة :

كيف نرسم خريطة ندفق لبرنامج يقوم بجمع اى عددين

 

الطريقة الوصفية


ادخل العدد الاول

ادخل العدد الثاني

اجمع العددين

اكتب ناتج الجمع


 

وهذه خريطة التدفق       .

نفس الشئ يمكن عمله فى حالة الضرب

و لكن ماذا اذا اردنا قسمة عددين ؟

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

مخطط الانسياب

مخطط انسياب

 

 

مثال :  هذا مخطط انسياب  يعبر عن التكرار

نريد ان نصمم برنامج ليجمع الاعداد من 1 الى 100

الخطوات

نعرف متغير Sum ليكون هو وعاء الجمع و نسند له القيمة 0

نعرف متغير N ليكون هو مولد الاعداد من 1 الى 100 و نسند له القيمة 0

نزيد N بمقدار 1 فى كل مرة

نضيف قيمة N الى Sum/

هل = 100

اطبع قيمة Sum
 

 

 

 

 

 

 

 

مخطط الانسياب               .

راجع أيضاً تخطيط مشروع برمجي

البرمجة

هي عملية كتابة البرنامج بإستخدام شفرة " تسمى لغة البرمجة (السوفت وير Software) " يسهل على الكمبيوتر تنفيذها .

و بشكل أدق هي عملية كتابة تعليمات و أوامر لجهاز ال كمبيوتر أو ملحقاته ، لتوجيه هذا الجهاز وإعلامه بكيفية التعامل مع البيانات أو كيفية تنفيذ سلسلة من الأعمال المطلوبة   .

 

لغات البرمجة

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

و يجدر الاشارة إلى أن الكمبيوتر مجرد آلة كهربائية مكونة من دوائر كهربائية داخله  ليس لها الا حالتين ... إما ان يمر بها تيار كهربائي و سنرمز لها بالرمز 1 . أو لا يمر بها تيار و نرمز لها بالرمز 0 . اذا الكمبيوتر لا يعرف الا لغة واحدة تتكون من حرفين (0،1) و تسمى لغة الآلة  -machine language- . في البداية عمل المبرمجون على تحليل شفرة ال كمبيوتر–machine code- والتعامل معها بشكلها الجامد وغير المفهوم وهو (0،1). ولكن هذه العملية معقدة جدا ويصعب التعامل معها لعدم فهمها الواضح للبشر .  لذلك تم ابتكار لغات راقية تعمل كوسيط بين لغة الإنسان  و يقزم برنامج خاص - يسمى المُترجم أوالمُجمع  compiler -  بترجمتها الى لغة الاّلة . غير أن بعض اللغات لا تحتاج مترجم .

برمجة المواقع على الانترنت

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

الخطوة الأولى في أغلب برامج المواقع هو تحليل المتطلبات " تحليل النظام البرمجي " بمعنى هل الموقع يعتمد على صفحة واحدة أم إنه متعدد الصفحات . ما هي الالوان المستخدمة . آلية تخزين البيانات إن كانت مطلوبة ... و هكذا  .

الخطوة الثانية تصميم واجهة الموقع و تصميم الصفحات و لون خط الكتابة و خلفية الصفحة و غيرها .

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

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

بعض لغات البرمجة

ASP اختصار لكلمة  Active Server Pages

وهي اطار انشأتها وتدعمها شركة مايكروسوفت ،، وتم إصداره في يناير من عام  2002 . طبعا تستخدم في برمجتها لغةC# ،، او  VB 

هذا الأطار يعتبر من اقوى إطارت برمجة المواقع ،، وهي التي برمجت بها مواقع كثيره مثل : امازون ، هوتميل ، مواقع مايكروسوفت بشكل عام ، ومن المواقع العربية موقع كووره الشهير ،

 

JSP اختصار لكلمةJava Server Pages

وهي اطار انشأته وتدعمه شركةSun Microsystems والتي اشترتها شركة اوراكل الشهيرة ،،

هذا الاطار يستخدم لغةJAVA وهي احدى اشهر لغات البرمجة في العالم ،

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

خيارات جاهزة كثيرة مثلASP ،، وتستخدم هذه اللغة العديد من مواقع الانترنت الخاصة بالبنوك،

 

PHP

وهي اختصار لكلمةPersonal Home Page Tools

وهي الإطار الأكثر انتشارا وذلك بسبب بسيط  لأنها لغة ذات مصدر مفتوح بامكان اي شخص ان يجد مواقع جاهزة بهذه اللغة .

انتج الـ php من البداية شخص يدعى راسموس ليدروف ، وترك هذه اللغة مجانية ومفتوحة المصدر . وهذا جعل الكثيرين يشاركون في تطوير هذه الادوات إلى ان أصبحت لغة كبيرة ومهمة جدا .

كما يوجد ايضاً

C

++C

net.

#C

Java

 

استثم

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

 

 

الموضوع  :  البرمجة و الخوارزم المرجع : استثمر للحياة  investolife 

اعلان تجاري
اعلان 468