اختبار هياكل السيطرة والحلقات
من دون هذه الهياكل ، برامجنا ستعمل بطريقة متسلسلة ، وستكون سيئة للغاية.
إختبار الهياكل
هذا ، سيسمح لأداء بعض التعليمات وفقا لما إذا كان الشرط صحيحا ام لا.
If ... Then
هذه أبسط حالات الشرط:
الشرط هو تعبير عن اختبار. حالة العلامات هي :
-
= > = : اكبر من
-
= <= : أصغر من
-
= >
: أكبر أو يساوي
-
= < == : أصغر أو يساوي
-
=
: المساواة
-
= <> = : لا يساوي
يمكننا أيضا المقارنة بين اثنين من القيم ، واثنين من المتغيرات على سبيل المثال :
If Variable1 = Variable2 Then
هنا, العلامة "=" يدل على وجود اختبار المساواة وليس لإسناد قيمة للمتغير المتغير (مثل a = 1).
الآن, هذا مثال للتوضيح :
Public Sub Main()
Dim age As Integer
Print "How old are you ? "
Input age
If age >= 18 Then
Print "You are major."
Else
Print "You are minor."
Endif
End
الكلمة
ELSE هي إختيارية. كمثال:
' Gambas module file
Public Sub Main()
Dim power As Integer = 15 'power in ch
If puissance < 15 Then
Print "Do you want to change your car? :p "
Endif
End
ملاحظة أخرى, الكلمة
ENDIF إختيارية إذا كان هناك جملة شرطية واحدة ,مثال:
Public Sub Main()
Dim power As Integer = 15 'power in ch
If puissance < 15 Then Print "Do you want to change your car? :p "
End
تركيب Select ... Case
نستخدم هذا التركيب عند وجود أكثر من قيمة لإختبارها. باستخدام هذا التركيب, سيكون الكود أكثر وضوحا وأكثر قابلية للقراءة :
Public Sub Main()
Dim pays As string
Print "De quel pays venez-vous ?"
Input pays
pays= lcase(pays) 'remove uppercases
Select Case pays
Case "france"
Print "Bonjour !"
Case "england"
Print "Hello !"
Case "espana"
Print "Ola !"
Case "portugal"
Print "Hola !"
Case Else
print"??"
End Select
End
حلقات التكرار
حلقات التكرار يسمح لك بتكرار تعليمة واحدة أو أكثر . هناك ثلاث أنواع لحلقات التكرار تسمح لك بفعل الشيء نفسه بعدة طرق.
For
جملة التكرار For يسمح لك بتنفيذ التعليمة
ن مرة.
Public Sub Main()
Dim i As Integer
For i = 1 To 5
Print "Value of i: " & i
Next
End
عندما يصل جامباس إلى التكرار لأول مره, فإنه ينقل القيمة 1 إلى
i, ثم ينفذ التعليمات التالية حتى يصل إلى الكلمة المفتاحية
NEXT . ويعود جامباس إلى بداية التكرار, ثم يزيد قيمة , المتغير
i حتى يصل إلى 5. سيتم قراءة التعليمات داخل التكرار 5 مرات :
Value of i: 1
Value of i: 2
Value of i: 3
Value of i: 4
Value of i: 5
Do ... Loop
بعذ الأحيان لا نعلم عدد مرات التكرار المطلوبة. ولكن نعلم متى يجب أن يقف. وهذا مثال للتوضيح :
Public Sub Main()
Dim result As integer
Print "How many two and two ?"
Do
Input result
Loop Until result = 4
PRINT "Congratulation! You have found :-) "
End
نستخدم أيضا الجملة
WHILE بدلا من
UNTIL لنجعل التكرار ينفذ تحت شرط ما.
Do
Input result
Loop While result <> 4
While
بالنسبة لـ
WHILE, فهي ذات تركيب خاص بها كما في المثال التالي:
' Gambas module file
Public sub Main()
Dim age As Integer
While age < 10
Inc age
Print "Value of age : " & age
Wend
End
الناتج:
Value of age : 1
Value of age : 2
Value of age : 3
Value of age : 4
Value of age : 5
Value of age : 6
Value of age : 7
Value of age : 8
Value of age : 9
Value of age : 10
لقد انتهينا من التكرار , يمكنك ال.