Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 42

‫جامعة الملك سعود‬

‫عمادة السنة األولى المشتركة‬


‫قسم مهارات تطوير الذات‬
‫مقرر تقن‬

‫لغات البرمجة‬
‫أنواع البرمجيـات‬
‫‪‬البرمجيـات (‪ )Software‬هي التي للمستخدم استخدام المكونات الماديـة (‪ )Hardware‬بكفاءة و راحــة‪.‬‬
‫‪‬و يمكن تقسيم البرمجيات إلى ثالثـة أنواع رئيسيـة و هي‪:‬‬
‫‪ .1‬برامج التشغيـل (‪)Operating System‬‬
‫‪.2‬برامج التطبيقات (‪)Application Programs‬‬
‫‪.3‬لغات البرمجـة ( ‪)Programming Languages‬‬
‫مـن هـو المبـرمـ ــج؟‬
‫‪‬المبرمج هو شخص قادر على كتابة اوامر للحاسوب لجعله قادرا على تنفيذ مهمة معينة‪.‬‬
‫‪‬وعليه يجب التفريق بين مستخدم الحاسوب و المبرمج حيث ان المستخدم يعتمد و يستفيد مما ينتجه له المبرمج من‬
‫برامج تطبيقية او برامج ترفيهية او تعليمية او حتى برامج إلدارة امور الدولة‬
‫صياغة البرامج ولغات البرمجة‬

‫بعد أن تكلمنا عن برامج نظم التشغيل و برامج التطبيقات يبقى سؤال‬

‫من كتب هذه البرامج؟‬

‫وكيف كتبت؟‬

‫وبأي لغة؟‬

‫وما هي الخطوات التي اتبعت لبناء هذه البرامج؟‬

‫‪4‬‬
‫صياغة البرامج ولغات البرمجة‬

‫‪ ‬ال"برنامج ‪ Program‬هو مجموعة التعليمات المرتبة منطقيا ً التي توجه الحاسوب ألداء عمل‬
‫معين على البيانات بهدف الحصول على معلومات مفيدة‪.‬‬

‫‪ ‬لغات البرمج"ة ‪ Programming Languages‬ه ي مجموع ة القواع د الت ي توف ر طريق ة‬


‫صياغة تعليمات البرنامج‪.‬‬

‫‪5‬‬
‫‪Programmer‬‬ ‫عمل صائغ البرامج‬

‫يقوم صائغ البرامج (المبرمج) بعدة خطوات لحل مشكلة ما‪ ،‬فيقوم‬

‫‪ ‬أوالً بصياغة المشكلة في صورة تعليمات للحاسوب لحلها‪،‬‬

‫‪ ‬ثم ينفذ التعليمات على الحاسوب ويختبر البرنامج لمعرفة مدى صحة النتائج‪،‬‬

‫‪ ‬وفي النهاية يكتب تقريراً عن البرنامج‪.‬‬

‫‪6‬‬
‫خطوات صياغة وتطوير البرامج ‪Program Development‬‬
‫‪Steps‬‬

‫مخطط يبين خطوات صياغة وتطوير البرامج‬


‫‪7‬‬
‫خطوات صياغة وتطوير البرامج ‪Program Development‬‬
‫‪Steps‬‬

‫‪ .1‬تحديد وتعريف المشكلة ‪Defining the Problem‬‬

‫في هذه الخطوة يقوم المبرمج بتحديد وتعريف المشكلة وتتضمن هذه الخطوة تحديد التالي بالترتيب‪:‬‬

‫الهدف من البرنامج (حساب ارباح‪ ،‬فواتير استهالك الماء والكهرباء‪ ،‬أو حساب معدل الطالب التراكمي)‬ ‫‪.1‬‬

‫نوع وحجم المخرجات ووسائل اإلخراج (تقارير – فواتير – شيكات – نقود ‪)...‬‬ ‫‪.2‬‬

‫نوع وحجم البيانات المدخلة ووسائل اإلدخال‪.‬‬ ‫‪.3‬‬

‫مستخدمي البرامج والمستفيدين منه‪.‬‬ ‫‪.4‬‬

‫‪8‬‬
‫خطوات صياغة وتطوير البرامج ‪Program Development‬‬
‫‪Steps‬‬

‫‪ .2‬تصميم البرنامج ‪Design the Program‬‬

‫‪ ‬يتم هنا تحديد المواصفات والخطوات الدقيقة والمرتبة منطقيا والتي تم فهمها ودراستها في الخطوة األولى‪.‬‬

‫‪ ‬ويتم ذلك بإستخدام عدة طرق منها خرائط التدفق ‪ Flowchart‬ويطلق عليها أيضا ً خرائط سير العمليات‬
‫وهي مجموعة من الرموز المتعارف عليها تستخدم لتوضيح الخطوات المنطقية الالزمة لحل مشكلة ما‪.‬‬

‫‪9‬‬
‫خطوات صياغة وتطوير البرامج ‪Program Development‬‬
‫‪Steps‬‬
‫‪ .2‬تصميم البرنامج ‪Design the Program‬‬
‫أهم الرموز" المستخدمة في خرائط التدفق‬

‫‪10‬‬
‫خطوات صياغة وتطوير البرامج ‪Program Development‬‬
‫‪Steps‬‬

‫‪ .3‬صياغة البرنامج ‪Coding the Program‬‬

‫‪ ‬بعد االنتهاء من تصميم البرنامج يتم اختيار إحدى لغات البرمجة المناسبة لصياغة أوامر‬
‫البرنامج ‪ Coding‬وذلك باالستعانة بخريطة التدفق ‪Flow Chart‬أو غيرها‪.‬‬

‫‪ ‬يجب عند صياغة البرنامج اتباع قواعد صيانة لغة البرمجة المستخدمة حيث ان لكل لغة‬
‫برمجة قواعد خاصة بها وال يعمل البرنامج اذا كان هنالك اخطاء امالئية او اخطاء في‬
‫قواعد اللغة ‪.Syntax Errors‬‬

‫‪11‬‬
‫خطوات صياغة وتطوير البرامج ‪Program Development‬‬
‫‪Steps‬‬

‫‪ .4‬اختبار ال""برنامج وتصحيح األخطاء ‪Program Debugging and‬‬


‫‪Testing‬‬
‫‪ ‬يس مى ال برنامج بع د ص ياغتة باحدى لغات البرمج ة ال"""برنامج المصدر ‪Source‬‬
‫‪ Program‬وال يت م تنفيذه مباشرة عل ى الحاس وب ب ل يت م ترجمت ه ال ى برنام"ج مكتوب‬
‫بلغة اآللة ‪.Object Program‬‬

‫‪ ‬تس مى عملي ة تحوي ل ال برنامج المص در ال ى برنام ج الهدف بالترجمة‪Compilation‬‬


‫ويقوم بها برنامج يسمى المترجم ‪.Compiler‬‬

‫‪12‬‬
‫خطوات صياغة وتطوير البرامج ‪Program Development‬‬
‫‪Steps‬‬

‫‪ .4‬اختبار ال""برنامج وتصحيح األخطاء ‪Program Debugging and‬‬


‫‪Testing‬‬
‫‪ ‬خالل عملي ة الترجم ة ‪Compilation‬ق د تظه ر اخطاء ف ي ص ياغة ال برنامج المص در‬
‫ينبغي على المبرمج تصحيحها‪.‬‬

‫‪ ‬هناك ثالث انواع من األخطاء‪:‬‬


‫‪ .1‬اخطاء في قواعد اللغة ‪ Syntax Errors:‬اخطاء امالئية في كتابة األوامر‪.‬‬

‫‪ .2‬اخطاء منطقي"ة ‪ :Logical Errors‬ال يكتشفه ا الحاس وب وتظه ر عن د تنفي ذ ال برنامج عل ى عين ه م ن ال بيانات‬
‫فنحص ل عل ى نتائ ج خاطئ ه او غي ر متوقع ة‪ ،‬ويقوم الم برمج بتتب ع خطوات ال برنامج لمعرف ة مص در الخط أ‬
‫وتصحيحه وتسمى هذه العملية ‪.Tracing‬‬

‫‪ .3‬اخطاء اثناء التشغي"ل ‪ :Run-Time Errors‬تظهرعند تنفيذ البرنامج مثل عدم حجز مساحة كافية للمدخالت‬
‫‪ 13‬او الدخول في دوران بال نهاية‪ ،‬وتظهر رسالة بنوع الخطاء‪.‬‬
‫خطوات صياغة وتطوير البرامج ‪Program Development‬‬
‫‪Steps‬‬

‫‪ .4‬توثيق البرنامج ‪Documenting the Program‬‬

‫‪ ‬في هذه المرحلة تتم كتابة وصف تفصيلي لصياغة البرنامج‪ ،‬ويشمل هذا التوثيق أصل‬
‫المشكلة وخطوات الحل وخرائط الحل وتعليمات التشغيل ومتطلبات التشغيل والمدخالت‬
‫والمخرجات وكيفية التحكم في البرنامج في المواقف المختلفة‪.‬‬

‫‪14‬‬
‫تصنيف لغات البرمجة‬

‫تصنف لغات البرمجة إلى ثالثة أنواع هي‪:‬‬

‫‪ .1‬لغات برمجة ذات مستوى منخفض ‪Low Level Languages‬‬

‫‪ .2‬لغات برمجة ذات مستوى عال ‪High Level Languages‬‬

‫‪ .3‬لغات الجيل الرابع ‪Fourth Generation Languages‬‬

‫‪15‬‬
‫تصنيف لغات البرمجة‬

‫‪ .1‬لغات البرمجة ذات المستوى المنخفض ‪Low Level Languages‬‬

‫‪ ‬تعتبر لغات البرمجة ذات المستوى المنخفض من أوائل لغات البرمجة ومنها‪:‬‬
‫‪ ‬لغة اآللة ‪Machine Language‬‬
‫‪ ‬لغة التجميع ‪Assembly language‬‬

‫‪ ‬س ميت باللغات المنخفض ة المس توى نظراً أل ن الم برمجين يكتبون أوام ر ال برنامج‬
‫بمس توى قري ب م ن مس توى فه م اآلل ة (الحاس وب)‪ ،‬حي ث تس تخدم هذه اللغ ة (‪)1 , 0‬‬
‫في كتابة البرامج‪.‬‬
‫‪16‬‬
‫تصنيف لغات البرمجة‬

‫‪ .2‬لغات البرمجة ذات المستوى العالي ‪High Level Languages‬‬

‫‪ ‬س ميت بهذا االس م ألن ه اص بح بامكان الم برمج كتاب ة ال برامج دون معرف ة تفاص يل كيفي ة قيام الحاس ب‬
‫بهذه العمليات‪ ،‬كمواقع التخزين و تفاصيل الجهاز الدقيقه‪.‬‬

‫‪ ‬تع بيرات اللغات ذات المس توى العال ي ش بيهه ال ى درج ة ك بيرة باللغ ة الت ي يس تخدمها االنس ان ف ي‬
‫التخاطب و التواصل مع االخرين‪.‬‬

‫‪ ‬تتميز بسهولة اكتشاف االخطاء و تصحيحها و يمكن تشغيلها على اكثر من جهاز‪ .‬كما يمكن استخدام‬
‫أكثر من لغة برمجه على جهاز واحد‪.‬‬

‫‪17‬‬
‫تصنيف لغات البرمجة‬

‫‪ .3‬لغات الجيل الرابع ‪Fourth Generation Languages‬‬

‫‪ ‬تس مى هذه اللغات أيضا ً باللغات عالي""""ة المس""""توى بص""""ورة كبيرة جداً‪Very High Level‬‬
‫‪ Languages‬حيث إنها لغات سهلة االستخدام والفهم وقريبة جداً من لغة اإلنسان‪.‬‬

‫‪ ‬يس تطيع الم برمج القيام بكثي ر م ن العمليات بس هولة تغني ه ع ن ص ياغة ‪ Coding‬ص فحات عديدة م ن‬
‫أوامر البرنامج‪ .‬ويهتم المبرمج بماذا يريده من الكومبيوتر دون ان يوجهه بكيفية القيام بذلك‪.‬‬

‫‪ ‬من لغات الجيل الرابع‪SQL , DBase :‬‬

‫‪18‬‬
‫أنواع لغات البرمجة‬

Visual Basic ‫ ولغة فيجوال بيسك‬BASIC Language ‫ لغة البـيسك‬.1

C & C++ Language ‫ لغة سي ولغة سي بلس بلس‬.2

Java Language ‫ لغة الجافا‬.3

COBOL Language ‫ لغة الكوبل‬.4

PASCAL Language ‫ لغة الباسكال‬.5

LOGO Language ‫ لغة اللوجو‬.6

Artificial Intelligence Languages ‫ لغات الذكاء االصطناعي‬.7

19
‫أنواع لغات البرمجة‬

‫‪ .1‬لغة البـيسك ‪ BASIC Language‬ولغة فيجوال بيسك ‪Visual Basic‬‬

‫‪ ‬وه ي لغات بس يطة عام ة األغراض وس هلة التعلـم ويس تخدمها الـمبتدئون فـي جمي ع األعمال‪ ،‬وخاص ة‬
‫فـي التطبـيقات العلـمية‪ ،‬وهي اختصار للمعنى‪Beginners All-Purpose Symbolic Instruction‬‬
‫‪.Code‬‬

‫‪ ‬لبساطة هذه اللغة واستخدامها في التعليم ظهرت لها عدة إصدارات منها‪:‬‬
‫‪.BASICA - GWBASIC - TURBO BASIC - QUICK BASIC‬‬

‫‪ ‬كما ظهرت أيضا ً لغ"ة فيجوال بيس"ك (البيس"ك المرئ"ي) ‪ Visual Basic‬وهي لغة برمجة مرئية وتعتبر‬
‫لغة مطورة من لغة البيسك وهي خاصة إلنتاج برمجيات ذات قدرة عالية وتتناسب مع بيئة برنامج نظام‬
‫ويندوز ‪.Windows‬‬

‫‪20‬‬
‫أنواع لغات البرمجة‬

‫‪ .2‬لغة سي ولغة سي بلس بلس ‪C & C++ Language‬‬

‫‪ ‬تتميز هذه اللغة بالقوة والمرونة والقدرة على إنتاج برمجيات متعددة وذات كفاءة عالية‪.‬‬

‫‪ ‬وقد ظهرت نسخة حديثة من لغة ‪ C‬ذات بيئة مرئية وهي لغة ‪ C++‬تتميز بكونها لغة برمجة‬
‫مرئية ‪.Visual‬‬

‫‪21‬‬
‫أنواع لغات البرمجة‬

‫‪ .3‬لغة الجافا ‪Java Language‬‬

‫‪ ‬تعتبر لغة الجافا من اللغات عالية المستوى وتعرف بأنها من اللغات المرئية ‪ Visual‬والشيئية‬
‫‪ ، Objects‬وهي من اللغات العامة األغراض والتي تستخدم إلنتاج برمجيات متنوعة‪.‬‬

‫‪ ‬تشبه لغة الجافا لغة ‪ C++‬إال أنها تتسم بالسهولة‪.‬‬

‫‪22‬‬
• Java features
‫أنواع لغات البرمجة‬

‫‪ .4‬لغة الكوبل ‪COBOL Language‬‬

‫‪ ‬تستخدم هذه اللغة بصفة رئيسية فـي األعمال التجارية مثل البنوك والشركات‪.‬‬

‫‪ ‬ه ي لغ ة واس عة االنتشار‪ ،‬وكلـمة كوب ل مشتق ة م ن الـكلـمة‪Common Business‬‬


‫‪ Oriented Language‬وبدأ ظهور هذه اللغة س نة ‪ 1959‬وق د أجري علـيها عدة‬
‫تعديالت لزيادة كفاءتها وكان آخرها سنة ‪.1974‬‬

‫‪24‬‬
‫أنواع لغات البرمجة‬

‫‪ .5‬لغة الباسكال ‪PASCAL Language‬‬

‫‪ ‬سميـت نسبة إلـى العالـم الفرنسي فـي علـم الـحاسوب ‪Blaise Pascal‬و‬
‫يرجع تاريخها إلى ‪ 1973‬وتستخدم لألغراض العامة وكلغة تعلـيمية‪.‬‬

‫‪ ‬علـى الرغم من وضوح بنائها إال أنها أصعب فـي التعلـم من لغة البـيسك‪.‬‬

‫‪ ‬تعت بر لغ ة باسكال م ن لغات البرمج ة الرئيسية الت ي تدرس لطلب ة المدارس‬


‫والكليات نظرا لوضوح الس مات األس اسية لتخطي ط ال برامج البنائي ة به ا‬
‫‪.Structured Programming‬‬
‫‪25‬‬
‫أنواع لغات البرمجة‬

‫‪ .6‬لغة اللوجو ‪LOGO Language‬‬

‫‪ ‬ه ي لغ ة تط بيقات علمي ة تتمي ز ببس اطة وس هولة تعلمه ا وق د ص ممت‬


‫خص يصا ليس تخدمها األطفال فه ي تشج ع عل ى اإلس تخدام المنطق ي‬
‫والتركيبي‪.‬‬

‫‪ ‬تعتمد هذه اللغة على استخدام روبوت صغير يسمى بالسلحفاة ‪ Turtle‬من‬
‫أجل ابراز استعماالتها كتعلم األفكار الحسابية مثل الزوايا والقياسات‪.‬‬

‫‪26‬‬
‫أنواع لغات البرمجة‬

‫‪ .7‬لغات الذكاء االصطناعي ‪Artificial Intelligence Languages‬‬


‫‪ ‬ه ي لغات خاص ة بإنتاج حاس بات ذكي ة تحاك ي اإلنس ان ف ي قدرات ه الحركي ة والبص رية‬
‫والتحليل واالستنتاج واتخاذ القرارات بناء على نظم الخبرة التي ستغذي بها الحاسبات‪.‬‬

‫‪ ‬من أهم هذه اللغات‪:‬‬

‫لغ"ة برولوج ‪ :Prolog‬يطل ق عليه ا اس م لغ ة البرمج ة المنطقية ‪Programming in‬‬ ‫‪‬‬

‫‪.Logic‬‬

‫لغ""ة ليس""ب ‪ :Lisp‬يطل ق عليه ا اس م لغ ة برمج ة القوائم ‪List Programming‬‬ ‫‪‬‬

‫‪.Language‬‬
‫‪27‬‬
‫الحاسوب و البرمجـة‬
‫ومن أهم مزايا الحـاسوب التي يستفيد منها المبرمج في حل المشكالت‪:‬‬

‫‪‬السرعة‪ :‬يستطيع الحاسـوب إنجـاز العمليات في وقت قصير جداً مقارنة بالوقت الذي يحتاجـه اإلنسان إلنجاز هذه العمليات بنفسه‪.‬‬

‫‪‬التكرار‪ :‬يتميز الحاسـوب بالقدرة على تنفيذ العمليات أو األوامر لعدة مرات يحددها المبرمج وتستفيد من الميزة األولى إلتمامها بسرعة‪.‬‬

‫‪‬الدقة‪ :‬فالحاسـوب يستطيع تنفيذ العمليات الحسابية المعقدة بدقة متناهية‪.‬‬

‫‪‬التخـزين‪ :‬قدرة الحاسوب على تخزين البيانات السـترجاعها في وقت الحق‪ ,‬ويتميز بحجم البيانات الكـبير القادر على تخزينه والسرعة والدقة‬
‫فيـ استرجاعها‪.‬‬
‫مكونات لغة البرمجة‬
‫‪ ‬و أي لغة البرمجـة له مجموعة مكونات قد تختلف طبيعة تمثيلها من لغة إلى أخرى‪ ,‬إال أنها كأصناف ثابتـة و هم‪:‬‬
‫عالمات الترقيم (‪)Punctuators‬‬ ‫•‬

‫الكلمات المحجوزة (‪)Reserved words‬‬ ‫•‬

‫الثوابت (‪)Constants‬‬ ‫•‬

‫النصوص (‪)String Constants‬‬ ‫•‬

‫األسماء التعريفية (‪)Identifiers‬‬ ‫•‬

‫المعامالت الحسابيـة و المنطقيـة (‪)Operators‬‬ ‫•‬


‫عالمات الترقيم (‪)Punctuators‬‬
‫‪ ‬من المعروف عند كتابة أي لغة استخدام ما يسمى ‪ Punctuators‬أو عالمات الترقيم‪.‬‬

‫‪ ‬الهدف منها هو‬


‫تحديد بداية أو نهاية بعض الجمل‪.‬‬ ‫•‬

‫• فصل الجمل عن بعضها حتى وإن كتبت في سطر واحد‪.‬‬

‫‪ ‬و هناك ‪ 6‬أنواع من عالمات الترقيم نستعرضهم في الجدول التالي‪:‬‬


‫عالمات الترقيم (‪)Punctuators‬‬
‫استخدامها‬ ‫اسمها‬ ‫العالمة‬
‫تستخدم لتحديد نهاية الجمل التي هي عبارة عن أوامر أو‬ ‫الفاصلة المنقوطة‬ ‫;‬
‫تعليمات للمترجم‬
‫تعبر عن بداية ونهاية مجموعة من الجمل المترابطة منطقيًا‬ ‫أقواس الجمل المترابطة‬ ‫{}‬
‫ألداء وظيفة معينة‪.‬‬
‫لفصل المفردات في نفس الجملة وهذه ضرورية‬ ‫الفراغات‬

‫تستخدم الستقبال قيم معينة للدوال‬ ‫أقواس القيم الممرة‬ ‫()‬


‫تستخدم لكتابة و ارسال نصوص معينة ‪.‬‬ ‫‪double quotations‬‬ ‫""‬
‫تستخدم لكتابة نوع معين من البيانات و هو الحروف الثابتة‬ ‫‪singe quotations‬‬ ‫''‬
‫الكلمات المحجوزة (‪)Reserved words‬‬
‫‪‬الكلمات المحجوزة هـ ــي كلمات محجوزة لالسـ ــتخدام مـ ــن قبـ ــل كـ ــل لغـ ــة بشكـ ــل قـ ــد‬
‫منفصل عن اللغات األخرى‪.‬‬

‫‪‬هذه الكلمات ال يمكـن اسـتخدامها أـو تخصـيصها ألـي وظيفـة غيـر المخصـصة لهـا داخـل‬
‫المترجم‪.‬‬

‫‪‬و هذه الكلمات جميعها تكتب بحروف صغيرة (‪.)Small letters‬‬

‫انتبــه‪ :‬لغـة الجافا تعتبر من اللغات الحساسـة لحالة األحرف فـَيعتبر المترجم الكلمة‬
‫‪ name.‬مختلفة عن الكلمة ‪Name‬‬ ‫تنبيه‬
‫الكلمات المحجوزة (‪)Reserved words‬‬
‫الثوابت ‪Constants‬‬
‫‪‬وهي عبارة عن قيم ثابتة تستخدم في البرامج‪ ,‬والمقصود بثابتة أنها ال‬
‫تتغير عند تشغيل البرنامج في كل مرة ولتغييرها يجب تعديل ‪ Code‬ثم‬
‫إعادة بناء البرنامج‪.‬‬
‫‪ ‬الثوابت تنقسم إلى ثالثة أنواع‪:‬‬
‫• أعداد صحيحة مثل ‪105 ,49- ,1‬‬
‫• أعداد عشرية ‪2.9- ,0.34 ,1.5‬‬
‫• حروف ‪ characters‬وهذا النوع ال يمكن كتابته مباشرة ولذلك نستخدم‬
‫عالمة الترقيم ' ' لتحديد هذا الحرف‪ ,‬مثل '‪'a', 'b', '5‬‬
‫الثوابت ‪Constants‬‬
‫‪‬نالحظ أنه يمكن كتابة األرقام كأحرف أو أرقام فهل تختلف في كل حالة؟‬
‫‪‬الجواب‪ :‬نعم ‪...‬‬
‫• فكمــا نعلــم أــن الحاســوب يقوم بتحويــل جميــع الــبيانات إلــى مقابلهــا بالنظام الثنائــي‬
‫حتــى يســتطيع التعامــل معهــا‪ ,‬وعنــد كتابتــه كرقــم مثالً ‪ 5‬يقوم بتحويلــه إلــى الرقــم ‪5‬‬
‫بالنظام الثنائـي أـي ‪ ,101‬وبالتالـي يمكـن إجراء عمليات الجمع والطرح وغيرهـا مـن‬
‫العمليات الحسابية عليه‪.‬‬
‫• أمـا عنـد كتابتـه كحرف مثـل '‪ '5‬يقوم بتحويلـه إلـى مـا يقابلـه بشيفرة ‪ ASCII‬وهـي‬
‫عبارة ع ــن شيفرة تحتوي عل ــى قيم ــة رقمي ــة بالنظام الثنائ ــي مقابل ــة لك ــل حرف وم ــن‬
‫هذه األحرف طبعاً األرقام‪ ,‬وبالتال ـ ــي ال يمك ـ ــن اس ـ ــتخدامه كرق ـ ــم وإجراء العمليات‬
‫الحسابية عليه‪.‬‬
‫النصوص (‪)String Constant‬‬
‫‪‬الثوابت النصية (النصوص) وهي عبارة عن مجموعة من األحرف المتتالية التي تستخدم للتعبير عن جملة معينة‪ ,‬وأيضاً حتى‬
‫ال يخلط المترجم بينها وبين األوامر البرمجية يجب وضعها بين عالمتي التنصيص ‪ "" Double Quotations‬والتي‬
‫تستخدم – كما ذكرنا سابقاً – لتحديد بداية ونهاية ثابت نصي‪.‬‬
‫‪‬الثوابت النصية يمكن أن يحتوي على أي حرف من الحروف ما عدا سطر جديد وعند كتابته على الشاشة يظهر كما هو‪.‬‬
‫أسماء تعريفية (‪)Identifiers‬‬
‫‪‬وهي عبارة عن أسماء تعريفية تستخدم كأسماء للمتغيرات ‪ ,‬الدوال ‪ ,‬الثوابت ‪...‬‬
‫‪‬و يتكون االسم التعريفي من الحروف اإلنجليزية (‪ , )A-Z, a-z‬و األرقام (‪ )9-0‬و العالمات الخاصة _ ‪$ ,‬‬
‫‪‬عند اختيار اسم تعريفي‪ ,‬يجب مراعاة ست قواعد‪:‬‬
‫أن يبدأ االسم بحرف‪.‬‬ ‫‪.1‬‬
‫أن ال يبدأ برقم‪.‬‬ ‫‪.2‬‬
‫ال يحتوي على مسافة فارغة‪.‬‬ ‫‪.3‬‬
‫ال يكون من األسماء المحجوزة‪.‬‬ ‫‪.4‬‬
‫يفضل أن يكون اسما معبرا عن ما يقوم به الكائن‪.‬‬ ‫‪.5‬‬
‫ال يحتوي على أي حروف أو عالمات خاصة أخرى غير المذكورة سابقا‪.‬‬ ‫‪.6‬‬
‫المتغيرات‬
‫‪‬المتغيرات هـي مواضـع محجوزة فـي الذاكرة بأحجام معينـة و مختلفـة يتـم فيهـا تخزيـن بيانات ليتـم معالجتهـا‬
‫و االستفادة منها في إنجاز عمل معين‪ ,‬و هذه المواضع يتم تسميتها باسم تعريفي‪.‬‬
‫‪‬و بتسميته يسهل عليها التعامل معه و معالجة البيانات المخزنة داخله خالل البرنامج ‪.‬‬
‫‪‬هذه المتغيرات لهــا أنواع تختلــف حســب نوع الــبيانات التــي نحتاجهــا مثــل أرقام صــحيحة ‪ ,‬أرقام عشريــة ‪,‬‬
‫نصوص ‪ ,‬حروف ‪ ... ,‬و غير ذلك‪.‬‬
‫المتغيرات‬
‫‪ ‬نستخدم المتغيرات و نقوم بتعريفها لعدة أسباب‪:‬‬
‫• ربط هذا االسم (المتغير) بعنوان في الذاكرة‪.‬‬
‫• تحديد نوع البيانات التي سيتم تخزينها في هذا المتغير‪ ,‬وبالتالي تحديد حجم الذاكرة الالزمة لتخزين هذه البيانات‪.‬‬
‫• ليستطيع الحاسوب التعامل مع القيم بالصورة الصحيحة عند تحويلها للنظام الثنائي‪.‬‬
‫طبيعة عمل المتغيرات‬

‫س‪hh‬يتم‪ h‬ت‪hhh‬خصيصمساحة ف‪hhh‬يا‪hh‬لذا‪h‬كرة س‪hh‬عته‪h‬ا ‪ 1‬ب‪hhh‬ايت‪Type1 x = 28 ; //‬‬


‫;‪Type2 y‬‬ ‫س‪hh‬يتم‪ h‬ت‪hhh‬خصيصمساحة ف‪hhh‬يا‪hh‬لذا‪h‬كرة س‪hh‬عته‪h‬ا ‪ 2‬ب‪hhh‬ايت‪//‬‬

‫بمجرد هذا التعريف يتم‬


‫تخصيص مساحة في‬
‫الذاكرة لتخزين رقم صغير‬
‫بحجم يناسب النوع المراد‬

‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫مقطع من الذكرة‬
)Operators( ‫المعامالت الحسابيـة و المنطقيـة‬
:‫ وهي تتيح للمبرمج القيام بعمليات المعالجة (الحسابية والمنطقية) وعمليات التخزين وهي تنقسم إلى‬
Arithmetic Operators (+, -, *, /, %).
Increment ‫و‬Decrement (++, --).
Assignment Operators (=, +=, -=, *=, /=, %=).
Relational Operators (<, >, <=, >=).
Equality Operators (==, !=).
Logical Operators (!, &&, ||).
‫األخطـاء في البرمجـة‬
‫‪‬عند كتابة البرامج بأي من لغات البرمجة وتنفيذها عاد ًة يظهر معنا أخطاء يتـعرف المترجم على اثنين منـها و ثالث‬
‫ال يتعرف عليه‪ ,‬فهناك ثالثة أنواع من األخطاء‪:‬‬
‫• ‪( : Syntax Errors‬خـطأ بـ ـ ـ ــرمــج )ي وـهيعـبارـة عـنأـخـطاء ف ـ ـ ــيكـ ــتابة ا ـ ــلمفرداـتوـقواـعد اـ ـ ـلغــة ي ـ ــستطيع ا ـ ــلمترـجـم‬
‫اـ ـ ـلتعــرفعـليهـا‪ ,‬وـباـ ـ ـلتا ـ ــليالـ ـ ي ـ ــمكنبـ ـ ـ ــناء أو تـ ـ ـ ــشغيلاـ ـ ـلبرنامــج بـ ـ ـ ــدونت ـ ـ ـ ـعــديـلهـا‪( .‬ي ـ ــتعــرفعـليهـ ا ـ ــلمترـجـم)‬
‫• ‪( : Runtime Errors‬خـطأ اـ ـ ـلتنفيذ) وـهيعـبارـة عـنأـخـطاء الـ ـ ي ـ ــمكنمــالحـظتهـا أـثـناء كـ ــتابة اـ ـ ـلبرنامــج وــال‬
‫ـجبـ ـ ــشغيلاـ ـ ـلبرنامــج وـتـجربـتهـا حـتىنـ ــتمكنمــناـكـتشافـهـا‪.‬‬ ‫ي ـ ــستطيع ا ـ ــلمترـجـم اـ ـ ـلتعــرفعـليهـا‪ ,‬وــالكـتشافهذهـ ا ـ ــألخـطاء ي ـ ـ تـ‬
‫(ي ـ ــتعــرفعـليهـ ا ـ ــلمترـجـم)‬
‫• ‪( :Logical Errors‬ا ـ ــلخطأ ا ـ ــلمنطق )ي و هو خـطأ الـ ـ ي ـ ــتعــرفعـليهـ ا ـ ــلمترـجـم و إـنـما ي ـ ــظهـر ف ـ ـ ــيمـرـحـلة ا ـ ــالخـتبار‪ ,‬كـأن‬
‫ي ـ ــتم عـكسنـ ــتائـج ا ـ ــلمقارـناتأو إـجراء عـملية حـسابـية بـ ـ ـ ــأولوية خــاطـئة‬

You might also like