القوائم Lists

أهلا بكم جميعا…

نستكمل كلامنا عن لغة البرمجة رينج…

القوائم Lists 

مكان لتخزين مجموعة من العناصر وكل عنصر له index يحدد موقعه قد يكون رقمي أو حرفي.

ويمكن تطبيق العمليات المختلفه علي القوائم Lists مثل الجمع والضرب  والاضافة والحذف والترتيب والخ…

ملحوظة:

يبدأ ترتيب العناصر من 1 وليس 0

الشكل التالي يوضح شكل القائمة :

1.png

طرق تعريف القوائم (Create Lists):

1-عن طريق تعريف العناصر المراد وضعها ف القائمة بين أقواس مربعة [ ] square bracts.

2-تحديد بداية ونهاية العنصر سواء رقمي أو حرفي باستخدام المعامل : ويتم العد تلقائيا وتسلسلياً.

3-عن طريق ذكر size داخل دالة ثم إضافة العناصر في القائمة.

ملحوظة:

يتم العد للحروف والأرقام تصاعديا وتنازليا بالتسلسل ” عن طريق ال  asci code”

 

للحصول علي عنصر من القائمة:

  [List[Index

لوضع قيمة لعنصر داخل القائمة:

List[Index]=  Expression

مثال توضيحي لتعريف القوائم :

2.jpg

مثال 2:توضيحي لتعريف القوائم :

3.jpg

القوائم المتداخلة (Nested Lists)

يتم تعريف قائمة أو أكثر داخل قائمة.

مثال توضيحي :

4.jpg

Using lists during definition

حيث يمكنك استخدام القائمة اثناء تعريفها كما في حالة nested Lists.

Access List Items By String Index

ادخال عناصر القائمة بقيم حرفية.

هناك طريقتان :-

الطريقة الاولي:

عندما يكون كل  index مكون من عنصرين فعندئذ ينبغي أن يكون العنصر الاول  حرفي.

الطريقة الثانية :

وهي نفس الاولي ولكن للسهولة بدلا من وضع علامة تعريف المتغير الحرفي مثل[ ” ” , ‘ ‘ ]

نستخدم : & المعامل =

 

مثال توضيحي:

5.jpg

نسخ للقوائم Copy Lists

يمكن عمل نسخ  copy كما قلنا من قبل باستخدام  المعامل =

مثال توضيحي :

6.jpg

أهم الدوال المستخدمة في القوائم 

() Add

تستخدم لإضافة عناصر جديدة(Add Items) عن طريق استخدام الدالة Add وكذلك استخدام المعامل +

  (Add (List,Item

مثال توضيحي:

1.jpg

()len

لمعرفة طول القائمة (length) – حجم القائمة.

(Len (List

() del

تستخدم لحذف عناصر من القائمة.

  (Del(List,Index

 ( )find

للبحث عن رقم index للعناصر.

(Find(List,Item Value

   بناء علي العمود<— (Find(List,Item Value,n Column

() sort

تستخدم لترتيب عناصر القائمة .

(Sort(List

  ترتيب العناصر بناء علي العمود<— (Sort(List,nColumn

مثال توضيحي:

الكود: example_Code

2.jpg

( )binarysearch

للبحث عن ال index  في قائمة مرتبة – لابد أولا من عمل ترتيب للقائمة اذا كانت غير مرتبة.

(BinarySearch(List,ItemValue

  BinarySearch(List,ItemValue,nColumn) —> Search in nColumn

مثال توضيحي:

الكود: example_Code

3.jpg

() reverse

لعكس ترتيب العناصر في القائمة.

(Reverse(List

() Insert

لاضافة عناصر في القائمة.

 (Insert(List,Index,Item 

مثال توضيحي :

4.jpg

 ( )Swap 

تستخدم لتبديل عناصر للقائمة كما في المثال التالي :

 

5.jpg



First –class lists

أي نستطيع وضع القائمة في متغيرات مثل : [List=[1,2,3,4,5، واستخدامها مع الدوال وارجاع القائمة كقيمة كما يمكن تمرير أوpassing” القائمة لدالة وكذلك معاملات القائمة “parameters.

مثال توضيحي لارجاع قيمة من القائمة:

1.jpg

Passing Lists To Functions

نمرر القائمة عن طريق “متغير يحمل قيم القائمة” الي دالة – حيث يتم التعامل مع القائمة كقيمة أو داخل الدالة.

Passing parameters of lists  To Functions

نمرر ال “parameters” الخاصة ب القائمة  لدالة.

  مثال توضيحي:

1.jpg

ومن هنا نهاية Lists … والي لقاء أخر

موقع اللغة:

http://ring-lang.net

Advertisements

اترك رد

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

WordPress.com Logo

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

صورة تويتر

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

Facebook photo

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

Google+ photo

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

Connecting to %s