جمل التحكم (Control Structures)

نوع من التفرع (تنفيذ مجموعة خطوات بناءً على إجابة سؤال أو شرط معين) لتحديد المسارات التي سوف يتم تنفيذها ولتغييرها أيضا لمسارات جديدة.

لجمل التحكم ثلاث أنماط في لغة رينج – أود أن تطلع عليهم وتختار النمط الذي يعجبك…

اللينكات التالية توضح الأنماط الثلاث داخل الموقع الرسمي للغة:

النمط الأول: http://ring-lang.sourceforge.net/doc1.3/controlstructures.html

النمط الثاني: http://ring-lang.sourceforge.net/doc1.3/getting_started2.html

النمط الثالث: http://ring-lang.sourceforge.net/doc1.3/getting_started3.html

أنواع جمل التحكم الموجودة في لغة رينج:

1-التفرع(Branching)

2-الحلقات التكرارية(Looping)

أولا التفرع (Branching):

If Statement

لتحديد مسار أو أكثر للتنفيذ بناءً على التعبير الشرطي، إذا كانت قيمته صحيحة (True) أو خاطئة (False).

 تعبير شرطي If Expression

    الكود في حالة  Block of statements) — True)

 تعبير شرطي But Expression

 الكود في حالة Block of statements) — True)

Else

غير ذلك من الكود في حالة  Block of statements) — False أو True)

OK

مثال توضيحي:

1.jpg

Short- Circuit Evaluation

  •  إذا كان أحد أطراف المعامل AND  يساوي صفر، فلا داعي لتقييم باقي أطراف المعامل  ويكون الناتج النهائي صفر(False).
  • إذا كان أحد أطراف المعامل OR يساوي واحد، فلا داعي لتقييم باقي أطراف المعامل ويكون الناتج النهائي واحد (True).ملحوظة1: المتغير True معرف داخل اللغة بقيمة تساوي 1 والمتغير False معرف داخل اللغة بقيمة تساوي 0ملحوظة2:القيمة الافتراضية للتقييم تساوي  (1) True الا في حالة (0) False.

مثال توضيحي:

2.jpg

 Switch Statement

تستخدم عندما يكون التفرع معتمد على متغير واحد وهناك شروط كثيرة.

  تعبير شرطي Switch Expression

On Expression

        Block of statements

Other

        Block of statements

 Off

مثال توضيحي:

3.jpg

ثانيا الحلقات التكرارية(Looping):

  • لتكرار مجموعة من المهام أو الأوامر.
  • تنفيذ مجموعة من الأوامر لعدد محدد من المرات حتى استيفاء الشرط.

ملحوظة:

يمكنك تكرار الكود لعدد غير محدد من المرات (عدد لانهائي) باستخدام While أو Do While.

While Loop

يتم اختبار الشرط قبل تنفيذ الكود ; ثم تنفيذ الكود وتكراره في حالة تحقق الشرط (True)، والتوقف في حالة عدم تحقق الشرط (False).

ملاحظة:

تستخدم While في حالة عدم معرفة عدد مرات التكرار، ولكن بناءً على تحقق شرط معين.

While Expression

        Block of statements

 End

مثال توضيحي:

4.jpg

For Loop

يتم تنفيذ الكود وتكراره لعدد محدد من المرات.

[For identifier=expression to expression [step expression

      Block of statements

 Next

ملحوظة:

  • لا حاجة لقيمة ابتدائية للمعرف.
  • لا حاجة لوجود شرط –فقط معرفة عدد مرات التكرار.

مثال1:

5.jpg

مثال 2 لعمل عداد عكسي:

6.jpg

For in Loop

[For identifier in List/String [step expression

        Block of statements

 Next

 استخدامات For In

  • لتخطي رقم معين في الحلقات التكرارية عن طريق استخدام الكلمة Step.
  •  يمكن استخدامها مع القائمة لقراءة وتعديل العناصر الموجودة داخل List.
  • الحصول على حروف الكلمات حرف حرف – كل حرف في سطر جديد.

مثال توضيحي:

7.jpg

Do Again Loop

يتم تنفيذ الكود أولا ثم يختبر الشرط ويستمر في التنفيذ طالما الشرط صحيح.

Do

        Block of statements

 Again expression

Loop Command

للقفز الي المرحلة التالية في الحلقة التكرارية عن طريق استخدام الكلمة Loop.

Loop [expression]       # inside loop

Exit Command

تستخدم للخروج من الحلقات التكرارية.

Exit [expression]       # inside loop

مثال توضيحي:

8.jpg

ملحوظة:

  •  يمكن الخروج من حلقتان تكراريتان عن طريقExit 2.
  •  كما يمكن الخروج من الحلقات التكرارية عن طريق استخدام  Exit/Loop بداخل دوال ثم استدعاء الدوال بداخل الحلقات التكرارية.

مثال توضيحي:

9.jpg

تم الانتهاء من هذه المدونة والي لقاء اخر …

الاكواد المستخدمة في الامثلة التوضيحية:

ControlStructures_Codes

موقع اللغة:

http://ring-lang.net

والسلام عليكم ورحمة الله…

 

Advertisements

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s