2. ВИЗУАЛ БЕЙСИКИЙН ОПЕРАТОРУУД
IF илэрхийлэл
Бичигдэх хэлбэр:
If <нөхцөл> Then <үйлдэл 1>
Жишээ:
IF A = 7 Then Beep
IF X < 9 Then Print “False!”
Else Print “True!”
...
IF илэрхийллэл дараах хэлбэртэй байж болно:
IF <нөхцөл> Then
үйлдэл 1
ElseIf
үйлдэл 2
Else
үйлдэл 3
End If
Жишээ:
If Balance – Check < 0 Then
Print “You are overdrawn”
Print “Authorities have been notified”
End If
Олон сонголтын Select Case
IF statement нь нэг юм уу хоѐр нөхцлийг шалгахад их тохиромжтой. Харин шалгах
нөхцлийн тоо 2-оос их байвал IF илэрхийллийг бичих нь нэлээд төвөгтэй байдлыг
үүсгэдэг. Логик операторууд зөвхөн нөхцлийн төрлийн хувьд тодорхойлогддог. Жишээ
нь:
If Age = 5 Then
Category = “Five Year Old”
3. ElseIf Age >= 13 and Age <= 19 Then
Category = “Teenager”
ElseIf (Age >= 20 and Age <= 35) Or Age = 50 Or (Age >= 60 and Age <= 65)
Then
Category = “Special Adult”
ElseIf Age > 65 Then
Category = “Senior Citizen”
Else
Category = “Everyone Else”
End If
Select Case нь сонголтын оператор бөгөөд сонголт доторх илэрхийллүүдийн
жагсаалтаас зөвхөн харгалзах нэг сонголтыг биелүүлнэ. Select Case-ээр эхэлж End Select-
ээр төгсөнө.
Бичигдэх ерөнхий хэлбэр:
Select Case <сонголтын хувьсагч>
Case <Утга 1>: <Илэрхийлэл 1>
Case <Утга 2>: <Илэрхийлэл 2>
...
Case <Утга n>: <Илэрхийлэл n>
End Select
Мөн дараах дэлгэрэнгүй байдлаар бичигдэж блно:
Select Case <сонголтын хувьсагч>
Case <Утга 1>: <Илэрхийлэл 1>
Case <Утга 2>: <Илэрхийлэл 2>
...
Case <Утга n>: <Илэрхийлэл n>
Case Else <Утга m>:< Илэрхийлэл m>
End Select
4. Дээрх жишээг хялбарчилж Select Case оператор ашиглан бичье.
Select Case Age
Case 5
Category = “Five Year Old”
Case 13 To 19
Category = “Teenager”
Case 20 To 35, 50, 60 To 65
Category = “Special Adult”
Case Is > 65
Category = “Senior Citizen”
Case Else
Category = “Everyone Else”
End Select
Сонголтын утга нь тоо, мөр байхаас гадна илэрхийлэл юм уу тодорхой интервал
байж болно. Жишээ нь:
Select Case Age
Case 5: lblTitle.Caption = “Kindergarden”
Case 6: lblTitle.Caption = “1 st Grade”
Case 7: lblTitle.Caption = “2 nd Grade”
Case 8: lblTitle.Caption = “3 rd Grade”
Case 9: lblTitle.Caption = “4th Grade”
Case Else: lblTitle.Caption = “Advanced”
End Select
Визуал бейсик дэх давталт
Програмд нэг үйлдлийг олон дахин гүйцэтгэх шаардлага гардаг бөгөөд уг асуудлыг
давталтын зарчмаар шийдвэрлэнэ.
1. For … Next давталт нь давталтын тоо тодорхой үед ашиглахад илүү
тохиромжтой.
Бичигдэх ерөнхий хэлбэр:
5. For <тоолох хувьсагч> = <эхлэл> To <төгсгөл>
нэг буюу хэд хэдэн илэрхийлэл
Next <тоолох хувьсагч>
Жишээ нь:
For I = 1 To 10 Step 2
Print I*100
Next I
„---
For L = 100 To 5 Step -0.5
X=Y*L
Next L
„---
For I1 = 1 To 5
For I2 = 10 To 20
Print I1 + I2
Next I2
Next I1
For давталтанд давталтын алхмыг тодорхойлж өгөх боломжтой. Алхмыг
тодорхойлохдоо дараах байдлаар зааж өгнө:
For <тоолох хувьсагч> = <эхлэл> To <төгсгөл> Step <алхам>
нэг буюу хэд хэдэн илэрхийлэл
Next <тоолох хувьсагч>
Жишээ нь:
Dim quarter As Integer
For quarter=1 To 12 Step 3
<илэрхийллүүд>
Next quarter
Алхмыг мөн уруудаж байхаар тодорхойлж болно.
Dim quarter As Integer
6. For quarter=10 To 1 Step -1
Debug.Print quarter
Next quarter
For давталтын үед тодорхой нөхцөл биелэгдсэн үед давталтаас гаргах үүрэгтэй Exit
For команд байдаг.
2. Do ... Loop: Визуал бейсик нь Do statement-н хоѐр хувилбартай бөгөөд үүний нэг
нь хамгийн ерөнхий нь Do While Loop юм. Энэ нь IF илэрхийлэлтэй төстэй. Энэ
давталтын илэрхийлэл нь Loop түлхүүр үгээр төгсөнө.
Бичигдэх ерөнхий хэлбэр:
Do While (<нөхцөл>)
нэг буюу хэд хэдэн илэрхийлэл
Exit Do
нэг буюу хэд хэдэн илэрхийлэл
Loop
Харьцуулах оператор буюу <нөхцөл> үнэн байвал давталт үргэлжилнэ. Жишээ нь:
Counter = 1
Do While Counter <= 1000
Debug.Print Counter
Counter = Counter + 1
Loop
Мөн төгсгөлд нь удирдлагыг шилжүүлэхээр давталтыг бичиж өгч болно.
Бичигдэх ерөнхий хэлбэр:
Do
нэг буюу хэд хэдэн илэрхийлэл
Exit Do
нэг буюу хэд хэдэн илэрхийлэл
Loop While (<нөхцөл>)
Зарим тохиолдолд төгсгөлгүй давталт хийгддэг бол үүнийг тодорхойгүй давталт
гэнэ. Энэ тохиолдолд давталт төгсгөлгүй үргэлжлэх тул програмыг зогсоохдоо Ctrl+Break
давталтаас гарна. Жишээ нь:
7. Dim strAge As String
Dim IntAge As Integer
Dim IntPress As Integer
strAge = InputBox(“How old are you?”, “Age Ask”)
If (strAge = “”) Then
End
End If
intAge = Val(strAge)
Do While ((intAge < 10) Or (intAge > 99))
IntPress = MsgBox(“Your age must be between “&_” 10 and 99”,
vbExclamation, “Error!”)
strAge = InputBox(“How old are you?”, “Age Ask”)
If (strAge = “”) Then
End
End If
intAge = Val(strAge)
Loop
3. Do Until Loop нь өгөгдсөн буюу харьцуулалтын шалгах нөхцөл худал байхад
үргэлжлэх давталт юм.
Бичигдэх ерөнхий хэлбэр:
Do Until (<нөхцөл>)
нэг буюу хэд хэдэн илэрхийлэл
Exit Do
Loop
Мөн төгсгөлд нь удирдлагыг шилжүүлэхээр давталтыг бичиж өгч болно.
Бичигдэх ерөнхий хэлбэр:
Do
нэг буюу хэд хэдэн илэрхийлэл
Exit Do
8. нэг буюу хэд хэдэн илэрхийлэл
Loop Until (<нөхцөл>)
Жишээ нь 1:
Counter = 1
Do Until Counter > 1000
Debug.Print Counter
Counter = Counter + 1
Loop
Жишээ нь 2:
Sum = 1
Do
Debug.Print Sum
Sum = Sum + 3
Loop While Sum <= 50
Жишээ нь 3:
Sum = 1
Do
Debug.Print Sum
Sum = Sum + 3
Loop Until Sum > 50
Жишээ нь 4:
Private Sub Form1_Load()
Dim strAge As String
Dim IntAge As Integer
Dim IntPress As Integer
strAge = InputBox(“How old are you?”, “Age Ask”)
If (strAge = “”) Then
9. End
End If
intAge = Val(strAge)
Do Until ((intAge > 10) Or (intAge < 99))
IntPress = MsgBox(“Your age must be between “&_” 10 and 99”,
vbExclamation, “Error!”)
strAge = InputBox(“How old are you?”, “Age Ask”)
If (strAge = “”) Then
End
End If
intAge = Val(strAge)
Loop
End Sub