ّ

عمـوريا

 

أول لغة برمجة عربية مفتوحة المصدر

 

الرئيسية

صفحة التحميل

أسئلة شائعة

ما الجديد

 

خطة العمل

المبرمجون

المبرمجون

 

 

 

 

بسم الله الرحمن الرحيم

خطة عمل لغة عمّوريا (عرب)

مسار العمل الرئيسي:

1.      تحديد مفردات اللغة و أوامرها.

1.1.            تعريف المتغيرات والثوابت.

أ‌)        تعريف المتغيرات

1)      شكل لغة فيجوال بيسك في التعريف ( واضح وسهل ويلاءم المبتدئين )

2)      شكل لغة باسكال أو دلفي ( واضح و مختصر ويناسب المتقدمين في البرمجة )

3)      شكل لغة السي \ السي ++ ( مختصر وسريع يناسب المتقدمين )

ب‌)    تعريف الثوابت

1)      الطريقة المشابهة لأسلوب فيجوال بيسك

2)      شكل لغة باسكال

3)      شكل لغة سي

1.1.1.      أنواع المتغيرات والثوابت

1.2.            الجمل الشرطية

أ‌)        جملة "إذا (لو)" البسيطة

ب‌)    جملة "إذا (لو) وغير ذلك (وإلا)"

ت‌)    جملة "إذا وغير ذلك إذا" المركبة

ث‌)    جملة إذا المختصرة

ج‌)      جملة ضع للاختيار

1.3.            جمل التكرار

أ‌)        جملة كرر

ب‌)    جملة من إلى

ت‌)    جملة بينما

ث‌)    جملة افعل طالما

ج‌)      تعليمتي "توقف" و "استمر"

ح‌)      جملة لكل قيمة من

1.4.            جملة اذهب إلى

1.5.            العمليات الحسابية والمنطقية

أ‌)        العمليات الحسابية

ب‌)    العمليات المنطقية

ت‌)    جمل الإسناد

1.6.            التعامل مع شاشة الأوامر

أ‌)        تعليمة اطبع

ب‌)    تعليمة ادخل

1.7.            تعريف المصفوفات

1.8.            تعريف المؤشرات والمرجعيات (العناوين)

1.9.            تعريف الماكرو ( البرامج الفرعية )

1.10.        تعريف التوابع ( الوظائف )

1.11.        التعليقات

1.12.        تعريف البُنَى

1.12.1.  جملة مع

1.13.        تعريف التعدادات

1.14.        تعريف الأصناف

1.14.1.  الوراثة

1.14.2.  إعادة تعيين التوابع

1.15.        المكتبات

2.      بناء مدقق إملائي ( Lexer ) لهذه اللغة.

3.      بناء مدقق نحوي ( Parser ) لهذه اللغة.

4.      بناء مترجم ( Compiler ) لهذه اللغة و تحديد اللغة المستهدفة التي يجب أن يترجم لها هذا المترجم.

5.      بناء بيئة العمل ( IDE ) لهذه اللغة، وتشمل المراحل التالية:

·         إنشاء محرر نصوص قادر على تلوين مفردات اللغة.

·         إنشاء مصمم للنماذج لتصميم العناصر المرئية للنوافذ (Form Designer ).

6.      بالتوازي مع كل مرحلة من السابق، يجب كتابة الملفات المساعدة ( دليل اللغة ) حتى يكون لدينا دليل كامل في نهاية مرحلة التصميم.

 

BD14516_

 

1.2.            الجمل الشرطية:

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

            تتيح لغة عمّوريا (عرب) كالعديد من لغات البرمجة العالية المستوى، مجموعة واسعة من الجمل الشرطية التي تعطي مرونة كبيرة للبرنامج.

أ‌)        جملة "إذا (لو)" البسيطة

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

إذا كان\كانت ( <شرط> ) نفذ

<مجموعة من الأوامر>

...

نهاية إذا

ونستطيع استخدام "لو" بدلاً من "إذا" وبنفس الاستخدام تماماً، وهذا فقط لإعطاء مرونة وسرعة أكبر في الكتابة، حيث "لو" تتكون من حرفين بينما "إذا" من ثلاثة أحرف، طبعاً لن يميز المدقق الإملائي أو النحوي بينهما وسوف يعتبرهما شيئاً واحداً.

لو كان\كانت ( <شرط> ) نفذ

<مجموعة من الأوامر>

...

نهاية لو

 

أمثلة:

إذا كان (الهدف > 3) نفذ

     النتيجة = "فوز"

نهاية إذا

 

لو كانت (السرعة >= 80) نفذ

     مخالفة = صح

     الزمن = المسافة ÷ السرعة

نهاية لو

نلاحظ كيف تضيف كلمة " كان" أو "كانت" شكلاً أوضح و أكثر ملائمة للجملة العربية، ولكن أيضاً يمكن الاستغناء عنها و ذلك أكثر اختصاراً وأسرع في الكتابة ولن يشتكي أيٌّ من المدقق الإملائي أو النحوي.

أمثلة:

إذا (الحدث == خطأ) نفذ

     سير_العمل = "توقف"

نهاية إذا

 

لو (الرقم > 0) نفذ

     النوع = "موجب"

نهاية لو

 

ب‌)     جملة "إذا (لو) وغير ذلك (وإلا)"

بنفس طريقة جملة "إذا" البسيطة، تضيف هذه الجملة جزءً آخر للتنفيذ في حال عدم تحقق الشرط، أي أنّ هذه الجملة سوف تحدد الخيار بين احتمالين، إذا تحقق الشرط سوف تنفذ جزءً وإذا لم يتحقق سوف تنفذ جزءً آخر.

إذا (لو) كان\كانت ( <شرط> ) نفذ

<مجموعة من الأوامر>

...

وغير ذلك (وإلا) نفذ

<مجموعة أخرى من الأوامر>

...

نهاية إذا (لو)

طبعاً هنا أيضاً نستطيع استخدام "إذا" أو "لو" بنفس التأثير تماماً، وأيضاً نستطيع استخدام "وغير ذلك" أو "وإلا" بنفس التأثير أيضاً، وكل ذلك لزيادة السرعة و الاختصار.

أمثلة:

إذا كان (الرقم >= 0) نفذ

     النتيجة = "موجب"

وغير ذلك نفذ

     النتيجة = "سالب"

نهاية إذا

 

لو ( العدد % 2 == 0) نفذ

     اطبع("موجب")

وإلا نفذ

     اطبع("سالب")

نهاية لو

 

ت‌)     جملة "إذا وغير ذلك إذا" المركبة

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

إذا (لو) كان\كانت ( <شرط1> ) نفذ

<مجموعة1 من الأوامر>

...

وغير ذلك (وإلا) إذا (لو) كان\كانت ( <شرط2> ) نفذ

<مجموعة2 من الأوامر>

...

وغير ذلك (وإلا) إذا (لو) كان\كانت ( <شرط3> ) نفذ

<مجموعة3 من الأوامر>

...

...

وغير ذلك (وإلا) نفذ

<مجموعة أخرى من الأوامر>

...

     نهاية إذا (لو)

    

     مثال:

            إذا كان (المعدل >= 90) نفذ

           التقدير = "أ"

     وإلا إذا كان (المعدل >= 80) نفذ

           التقدير = "ب"

     وإلا إذا كان (المعدل >= 70) نفذ

           التقدير = "ج"

     وإلا نفذ

           التقدير = "د"

     نهاية إذا

    

أيضاً نستطيع حذف كلمة "نفذ" من كل السابق دون أن يتأثر البرنامج، وطبعاً ذلك أحد الخصائص التي تتيحها لغة عمّوريا (عرب)، حيث يمكننا التبسيط في الكتابة أو زيادة الإيضاح كما يحلو لنا.

 

ث‌)     جملة إذا المختصرة

تتيح لغة عمّوريا (عرب) شكل لغة السي المختصر من جملة إذا، وهو كالتالي:

 

<اسم متغير> = (<شرط>) ؟ <تعليمة في حالة صحة الشرط> : <تعليمة في حالة الخطأ>

 

مثال:

 

النتيجة = (الرقم >= 0) ؟ "موجب" : "سالب"

 

التعليمة السابقة موافقة لجملة إذا التالية:

 

إذا كان (الرقم >= 0) نفذ

     النتيجة = "موجب"

وإلا نفذ

     النتيجة = "سالب"

نهاية إذا

 

ج‌)     جملة ضع للاختيار

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

ضع (<اسم متغير>) للاختيار

في حالة <قيمة1> نفذ

           <مجموعة1 من الأوامر>

نهاية الحالة

في حالة <قيمة2> نفذ

           <مجموعة2 من الأوامر>

نهاية الحالة

في حالة <قيمة3> نفذ

           <مجموعة3 من الأوامر>

نهاية الحالة

...

في الحالات الأخرى نفذ

     <مجموعة أخرى من الأوامر>

نهاية الحالات

     نهاية الاختيار

    

            ويوجد شكل آخر لهذه الجملة، أكثر اختصاراً وملائمةً للمبرمجين المتقدمين.

 

اختر (<اسم متغير>)

حالة <قيمة1> :

           <مجموعة1 من الأوامر>

نهاية

حالة <قيمة2> :

           <مجموعة2 من الأوامر>

نهاية

حالة <قيمة3> :

           <مجموعة3 من الأوامر>

نهاية

...

وإلا :

     <مجموعة أخرى من الأوامر>

نهاية

     نهاية الاختيار

 

     مثال:

 

            ضع (التقدير) للاختيار

           في حالة "أ" نفذ

                اطبع("ممتاز")

           نهاية الحالة

           في حالة "ب" نفذ

                اطبع("جيد جداً")

           نهاية الحالة

           في حالة "ج" نفذ

                اطبع("جيد")

           نهاية الحالة

           في حالة "د" نفذ

                اطبع("مقبول")

           نهاية الحالة

           في حالة "ر" نفذ

                اطبع("راسب")

           نهاية الحالة

في الحالات الأخرى نفذ

           اطبع("الحرف المدخل غير صحيح")

نهاية الحالات

نهاية الاختيار

 

<<السابقالتالي>>

 

 

تصميم المخلص لله تعالى ® 2008