background image

صياغة البرامج ولغات البرمجة

Programming & 

programming languages

D. Abdalrahman R. Qubaa


background image

Syllabus

C++ Programming I                                              First class/Semester II                   

❖ Introduction to programing and types of programming languages
❖ Study of Program Development Steps and Flowchart  
❖ Introduction to C++ programing
❖ Structured Programming  (Variables, Input, Memory)
❖ Operators: Assignment operators, Arithmetic operators, Increment and decrement 

operators, Decision making operators, Conditional operator

❖ Selection statements-1: if single-selection statement, if..else.

❖ Selection statements-2: Nested if..else, switch multiple-selection statement

❖ Repetition Statements: while repetition statement, for repetition statement, 

do..while, break and continue statements

❖ One-dimensional Arrays: Array elements, Approaches of initialization arrays, 

Array of characters, Searching arrays,

❖ Multidimensional Arrays: Array elements, Approaches of initialization arrays, Array 

of characters, Searching arrays,

2


background image

Textbook and Software:

The C++ Programming Language (4th Edition) By: 
Bjarne Stroustrup. 

Programming: Principles and Practice Using C++ 
(2nd Edition) By: Bjarne Stroustrup.

The software that is used in this course is the Code:: 
Blocks as a C++ compiler.

3


background image

 بعد أن تكلمنا

 في الكورس االول

عن برامج نظم التشغيل و برامج التطبيقات يبقى

سؤال

 من

ي

 ؟كتب هذه البرامج

 ؟وكيف كتبت

 ؟وبأي لغة

 وما هي الخطوات

 العملية

؟التي اتبعت لبناء هذه البرامج

 الوحدة الثالثة

 الفصل التاسع

صياغة البرامج

-

لغات البرمج

ة

4

صياغة البرامج ولغات البرمجة

Programming & programming languages


background image

جهاز

الحاسب

يـللآا

هو

ةــلآ

تنفذ

ما

يأتيها

من

رـــماوأ

ةـقدب

عالية

.

حيث

ونـكت

هذه

رـماولأا

ةــبوتكم

اـميف

يسمى

(

برنامج

)

.

وجميع

البرامج

تكون

مكتوبة

على

هيئة

سلسلة

من

األوامر

اليسيرة

التي

ينفذها

الحاسب

اآلل

ي

لتحقيق

هدف

ما

او

حل

مشكلة

معينة

.

هذه

األوامر

تكتب

بلغة

معينة

يفهمها

االنسان

اضافة

الى

جهاز

الحاسب

.

 لغات

ال

 برمجة

Programming Languages

:

 هي مجموعة القواعد

 واالوامر

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

ل

 صياغة تعليمات

 االنسان

(

ال

م

برمج

)

 لتوصيلها الى المعالج وهي

همزة الوصل بين االنسان وجهاز الحاسب

.

البرنامج

Program 

:

 هي مجموعة من التعليمات المتسلسلة والمترابطة

و

التي توجه الحاسوب ألداء ع

 مل

معين

على البيانات

الخام و

 تنفيذ مهمة محددة و تكتب

بأحدى

لغات البرمجة

 .

تتفاوت لغات البرمجة من حيث نوعية التطبيقات وبيئة التشغيل وطريقة ا

 لتفاعل بين

 المستخدم والتطبيق والوسط الذي يتم

 من

خالله التفاعل

.

5

بعض المفاهيم والتعاريف االساسية


background image

المبرمج

Programmer

:

هو

صائغ

البرامج

او

هو

الشخص

الذي

يقوم

بكتابة

البرامج

بعد

اختيا

ره

للغة

برمجة

معينة

لتحقيق

هدف

اوحل

مسالة

معينة

.

حيث

تمر

عملية

البرمجة

بالنسبة

للمبرمج

بعدة

مراحل

هي

:

1

)

مرحلة

فهم

وتحليل

المشكلة

.

2

)

افتراض

حل

منطقي

ووضع

خطوات

لذلك

.

3

)

كتابة

سلسلة

من

األوامر

لحل

المشكلة

.

4

)

اختبار

البرنامج

والتأكد

من

صحة

عمله

.

5

)

تحويل

البرنامج

إلى

صيغة

تنفيذية

،

تمثل

الشكل

النهائي

الذي

يحتوي

على

الواجهة

الت

ي

يراها

المستخدم

وتوثيق

البرنامج

.

المستخدم

User

:

هو

من

يستخدم

،البرنامج

حيث

تظهر

له

واجهة

البرنامج

ولن

تظهر

له

األوامر

التي

كتبها

المبرمج

.

6

بعض المفاهيم والتعاريف االساسية


background image

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

7

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

Program 
Development                Steps


background image

 الوحدة الثالثة

 الفصل التاسع

صياغة البرامج

-

لغات البرمج

ة

8

خطوات صياغة وتطوير

البرامج

Program 
Development               Steps

1

.

تحديد

وتعريف

المشكلة

Defining the Problem

في

هذه

الخطوة

يقوم

المبرمج

بتحديد

وتعريف

المشكلة

وتتضمن

هذه

الخطوة

تحديد

التا

لي

بالترتيب

:

.1

الهدف

من

البرنامج

(

حساب

،ارباح

فواتير

استهالك

الماء

،والكهرباء

أو

حساب

معدل

الطالب

التراكمي

)

.2

نوع

وحجم

المخرجات

ووسائل

اإلخراج

(

تقارير

فواتير

شيكات

نقود

...

/

طابعة

ـــ

شاشة

....

)

.3

نوع

وحجم

البيانات

المدخلة

ووسائل

اإلدخال

(

اسعارمواد

,

جملة

اومفرد

ــ

درجات

طالب

..

/

لوحة

المفاتيح

ــ

الكاميرا

ــ

...

)

.

.4

مستخدمي

البرامج

والمستفيدين

منه

.

(

عام

لكل

الناس

ـــ

موظف

مختص

ـ

مكاتب

اهلية

ـــ

مدارس

ــ

جامعات

...

...

)

.


background image

 الوحدة الثالثة

 الفصل التاسع

صياغة البرامج

-

لغات البرمج

ة

9

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

Program 
Development               Steps

2

.

تصميم

البرنامج

Design the Program

يتم

هنا

تحديد

المواصفات

والخطوات

الدقيقة

والمرتبة

منطقيا

والتي

تم

فهمها

ودراستها

في

ا

لخطوة

األولى

.

ويتم

ذلك

بإستخدام

عدة

طرق

منها

كتابة

الخوارزميات

Algorithems

وهي

عبارة

عن

كتابة

سلسلة

من

الخطوات

المنطقية

المؤدية

لحل

المشكلة

.

او

استخدام

المخططات

االنسيابية

Flowchart

ويطلق

عليها

  أيضا

خرائط

سير

العمليات

وهي

مجموعة

من

الرموز

المتعارف

عليها

تستخدم

لتوضيح

الخطوات

المنطقية

الالزمة

لحل

مشكلة

ما

.


background image

10

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

Program 
Development               Steps

2

.

تصميم

البرنامج

: Design the Program

باستخدام

الخوارزميات

Algorithms

Example 1: Write an algorithm to input tow number and print witch of them greater
than other.

Detailed Algorithm 

Step 1:   Input  X, Y

Step 2:  if (X>Y) then

Step 3:  Print 

“X greater than Y”

else

Print 

“Y greater than X”


background image

11

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

Program 
Development               Steps

2

.

تصميم

البرنامج

Design the Program

:

باستخدام

المخطط

االنسيابي

Flow chart


background image

12

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

Program 
Development               Steps

3

.

صياغة

البرنامج

Coding the Program

بعد

االنتهاء

من

تصميم

البرنامج

يتم

اختيار

إحدى

لغات

البرمجة

المناسبة

لص

ياغة

أوامر

البرنامج

Coding

وذلك

باالستعانة

بالمخطط

االنسيابي

Flowchart

أوغيرها

.

يجب

عند

صياغة

البرنامج

اتباع

قواعد

صيا

غ

ة

لغة

البرمجة

المستخدمة

حيث

ان

لكل

لغة

برمجة

قواعد

خاصة

بها

وال

يعمل

البرنامج

اذا

كان

هنالك

اخطاء

امالئية

او

اخط

اء

في

قواعد

اللغة

Syntax Errors

.


background image

13

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

Program 
Development             Steps

4

.

اختبار

البرنامج

وتصحيح

األخطاء

Program Debugging and Testing

يسمى

البرنامج

بعد

صياغتة

باحدى

لغات

البرمجة

البرنامج

المصدر

Source Program

وال

يتم

تنفيذه

مباشرة

على

الحاسوب

بل

يتم

ترجمته

الى

برنامج

مكتوب

بلغة

اآللة

Machine Languages

وهو

ما

يسمى

بالبرنامج

الهدف

Target Program

.

تسمى

عملية

تحويل

البرنامج

المصدر

الى

برنامج

الهدف

بالترجمة

Compilation

ويقوم

بها

برنامج

يسمى

المترجم

Compiler

.


background image

14

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

Program 
Development             Steps

4

.

اختبار

البرنامج

وتصحيح

األخطاء

Program Debugging and Testing

خالل

عملية

الترجمة

Compilation

قد

تظهر

اخطاء

في

صياغة

البرنامج

المصدر

ينبغي

على

المبرمج

تصحيحها

.

هناك

ثالث

انواع

من

األخطاء

:

.1

اخطاء

في

قواعد

اللغة

:Syntax Errors

اخطاء

امالئية

او

لغوية

في

كتابة

األوامر

وتظهر

رسالة

بان

هناك

خطا

امالئي

.

.2

اخطاء

اثناء

تشغيل

البرنامج

Run-Time Errors

:

تظهر

عند

تنفيذ

البرنامج

مثل

عدم

حجز

مساحة

كافية

للمدخالت

او

الدخول

في

دوران

بال

،نهاية

وتظهر

رسالة

بنوع

الخطاء

.

.2

اخطاء

منطقية

Logical Errors

:

ال

يكتشفها

الحاسوب

والتظهر

رسالة

عن

الخطا

وتظهر

عند

تنفيذ

البرن

امج

على

عينه

من

البيانات

فنحصل

على

نتائج

خاطئه

او

غير

،متوقعة

ويقوم

المبرمج

بتتبع

خطوات

ا

لبرنامج

لمعرفة

مصدر

الخطأ

وتصحيحه

وتسمى

عملية

التتبع

ب

Tracing

.


background image

15

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

Program 
Development              Steps

5.

توثيق

البرنامج

Documenting the Program

في

هذه

المرحلة

تتم

كتابة

وصف

تفصيلي

لصياغة

،البرنامج

ويشمل

هذا

الت

وثيق

:

.1

كتابة

أصل

المشكلة

(

او

الهدف

من

البرنامج

)

.2

وخطوات الحل

 وخرائط الحل

Flowchart

.3

 وتعليمات التشغيل

Help 

.4

ومتطلبات

التشغيل

(

نظام

التشغيل

واللغة

المطلوبة

وسرعة

المعالج

وحجم

الذاكرة

...

)

.5

 والمدخالت والمخرجات

Inputs Outputs

.6

وكيفية

التحكم

في

البرنامج

في

المواقف

المختلفة

.


background image

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

:

.1

 لغات برمجة ذات مستوى منخفض

Low Level Languages

.2

 لغات برمجة ذات مستوى عال

High Level Languages

.3

 لغات الجيل الرابع

Fourth Generation Languages

16

تصنيف لغات البرمجة


background image

1

 .

لغات البرمجة ذات المستوى المنخفض

Low Level  Languages 

تعتبر لغات البرمجة ذات المستوى المنخفض من أوائل لغات البرمجة ومنها

:

لغة

اآللة

Machine Language

لغة

التجميع

Assembly language

سميت

باللغات

المنخفضة

المستوى

  نظرا

ألن

المبرمجين

يكتبون

أوامر

البرنامج

ب

مستوى

قريب

من

مستوى

فهم

اآللة

(

الحاسوب

)

،

حيث

تستخدم

هذه

اللغة

(

0

,

1

)

في

كتابة

البرامج

.

تكتب

األوامر

في

لغة

اآللة

على

شكل

سلسلة

من

األرقام

الثنائية

(

0

,

1

)

حتى

يفهمها

جهاز

الحاسب

اآللي

وهي

اللغة

الوحيدة

التي

يفهمها

الحاسب

.

حولُت

جميع

اللغات

الى

لغة

اآللة

حتى

تتمكن

معدات

الحاسب

اآللي

من

التفاهم

معها

.

مميزاتها

:

سرعة

التنفيذ

ألنها

تخاطب

وحدة

المعالجة

مباشرة

عيوبها

:

-

غير

مرنة

(

صعوبة

كتابة

وتصحيح

برامجها

)

.

-

غير

عمومية

(

برامجها

تعتمد

على

نوع

اآللة

)

.

17

تصنيف لغات البرمجة


background image

18

تصنيف لغات البرمجة

2

 .

لغات البرمجة ذات المستوى العالي

High Level Languages                

بظهور اللغات ذات المستوى العالي أصبحت عملية التخاطب والتعامل معع الحاسعب أسعهل نسعب

 يا  وذلعك

ألن لغة التعامل مع الحاسب أصبحت قريبة من لغة البشر

.

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

 يعام الحاسعب

بهذه العمليات

.

بعض مميزات هذه اللغات

:

-

قريبة

من

لغة

االنسان

.

-

مرنة

(

سهولة

في

كتابة

وتعديل

وتصحيح

البرامج

)

.

-

عمومية

(

عدم

االرتباط

بآلة

معينة

)

.

-

توفير

الوقت

والجهد

عيوبها

:

-

بطء

التنفيذ

الحتياجها

لوسيط

يقوم

بتحويل

البرنامج

المصدر

(

Source Code

)

المكتوب

باحدى

هذه

اللغات

الى

البرنامج

الهدف

(

Target Code

)

المكتوب

بلغة

اآللة

.

ومن الطبيعي لبرنامج مكتوب بلغة عالية المستوى أن يترجم إلى برنامج بلغة اآللة

 ,

ويطلق ع

 لى البرنامج

المكتوب باللغة عالية المستوى برنامج المصدر أو كود المصدر والبرنامج المترجم يطلق علي

 ه في هذه

 الحالة المترجم

(Compiler)

.


background image

19

تصنيف لغات البرمجة

3

 .

لغات الجيل الرابع

Fourth Generation Languages              

تسمى

هذه

اللغات

  أيضا

باللغات

ذات

المستوى

ال

عالي

ج

  دا

Very High Level Languages

حيث

إنها

لغات

سهلة

االستخدام

والفهم

وقريبة

  جدا

من

لغة

اإلنسان

.

يستطيع

المبرمج

القيام

بكثير

من

العمليات

بسهولة

تغنيه

عن

صياغة

Coding

صفحات

عديدة

من

أوامر

البرنامج

.

ويهتم

المبرمج

بماذا

يريده

من

الكومبيوتر

دون

ان

يوجهه

بكيفية

القيام

بذلك

.

ومن

ضمنها

ظهر

مايسمى

بل

غات

البرمجة

موجهة

االهداف

(

Object Oriented Programming Language

)

تدعم

مقومات

مبنية

على

اساس

كل

كائن

فى

الحياة

ينتمي

الى

طبقة

أو

صنف

و

كل

طبقة

ت

نحدرمن

طبقة

أعلى

.

و

من

هذه

المقومات

:

اخفاء

البيانات

,

الوراثة

,

اعادة

االستعمال

.

تدعم

اسلوب

البرمجة

المرئية

(

تصميم

الواجهات

الرسومية

)

من

امثلتها

:

visual basic , visual c++ , java builder


background image

.1

يسكـبلا ةغل

BASIC Language    

ولغة فيجوال بيسك

Visual Basic     

.2

لغة سي ولغة سي

بلس بلس

C & C++ Language

.3

لغة الجافا

Java Language

.4

لغة الكوبل

COBOL Language

.5

لغة الباسكال

PASCAL Language

.6

لغة اللوجو

LOGO Language

.7

لغات الذكاء االصطناعي

Artificial Intelligence Languages 

 مثل لغة

Prolog

20

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

ذات المستوى العالي


background image

1

 .

يسكـبلا ةغل

BASIC Language 

ولغة فيجوال بيسك

Visual Basic

 وخاص،لامعلأا عيمج يـف نوئدتبمـلا اهمدختسيو مـلعتلا ةلهسو ضارغلأا ةماع ةطيسب تاغل يهو

 يـف ة

 وهععي اختصععار للمعنععى،ةيمـععلعلا تاقيـععبطتلا

Beginners  All-Purpose  Symbolic  Instruction 

Code

.

لبساطة هذه اللغة واستخدامها في التعليم ظهرت لها عدة إصدارات منها

:

BASICA

-

GWBASIC

-

TURBO BASIC

-

QUICK BASIC

.

  كما ظهرت أيضا

 لغة فيجوال بيسك

(

البيسك المرئي

 )

Visual  Basic

 وهي لغعة برمجعة مرئيعة وتعتبعر

لغة مطورة من لغة البيسك وهي خاصة إلنتاج برمجيات ذات قدرة عالية وتتناسب مع بيئة بر

 نامج نظام

 ويندوز

Windows

.

21

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


background image

2

 .

لغة سي ولغة سي بلس بلس

C & C++ Language

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

ية

 .

 وقد ظهرت نسخة حديثعة معن لغعة

C

وهعي لغعة

++

C

 ذات بيئعة

ذكيعة مطعورة

  ,

 وطعورت ايضعا

  الى

Visual C

 والتي

تتميز بكونها لغة برمجة مرئية

.

22

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

3

 .

لغة الجافا

Java Language

 تعتبر لغة الجافا من اللغات عالية المستوى وتعرف بأنها من اللغات المرئيعة

Visual

 والشعيئية

Objects

 وهي من اللغات العامة األغراض والتي تستخدم إلنتاج برمجيات متنوعة،

 .

تشبه لغة الجافا لغة

++

C

إال أنها تتسم بالسهولة

 .


background image

4

 .

لغة الكوبل

COBOL Language

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

ات

 .

مةـععلكـلا نععم ةقتععشم لععبوك مةـععلكو ،راععشتنلاا ةعععساو ةععغل يععه

Common  Business 

Oriented 

Language 

 وبدأ ظهور هذه اللغة سعنة

1959

 يها ععدةـعلع يرعجأ دعقو

 تعديالت لزيادة كفاءتها وكان آخرها سنة

1974

.

23

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

5

 .

لغة الباسكال

PASCAL Language

 حاسوبـععلا مـععلع يـععف يععسنرفلا مـععلاعلا ىـععلإ ةبععسن تـععيمس

Blaise Pascal

 و يرجععع

 تاريخها إلى

1973

يميةـلعت ةغلكو ةماعلا ضارغلأل مدختستو

 .

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

 .

تعتبععر لغععة باسععكال مععن لغععات البرمجععة الرئيسععية التععي تععدرس لطلبععة المععدارس و

 الكليععات

 نظعععرا لوضعععوح السعععمات األساسعععية لتخطعععيط البعععرامج البنائيعععة بهعععا

Structured 

Programming

.


background image

24

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

6

 .

لغة اللوجو

LOGO Language

هي لغة تطبيقات علمية تتميز ببساطة وسهولة تعلمها وقد صممت خصيصعا

 ليسعتخدمها

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

.

 تعتمد هذه اللغة على اسعتخدام روبعوت صعغير يسعمى بالسعلحفاة

Turtle

 معن أجعل ابعراز

استعماالتها كتعلم األفكار الحسابية مثل الزوايا والقياسات

.

7

 .

لغات الذكاء االصطناعي

Artificial Intelligence Languages

هععي لغععات خاصععة بإنتععاج حاسععبات ذكيععة تحععاكي اإلنسععان فععي قدراتععه الحركيععة والبصعع

 رية

والتحليل واالستنتاج واتخاذ القرارات بناء على نظم الخبرة التي ستغذي بها

الحاسبات

.

من أهم هذه اللغات

 :

 لغة برولوج

Prolog

 :

 يطلق عليها اسم لغة البرمجة المنطقية

Programming in Logic

.

 لغة ليسب

Lisp

 :

 يطلق عليها اسم لغة برمجة القوائم

LisProgramming Language

.




رفعت المحاضرة من قبل: Mohammed Aldhanuna
المشاهدات: لقد قام عضوان و 173 زائراً بقراءة هذه المحاضرة








تسجيل دخول

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