Amaliy mashg‘ulotlar
1-amaliy mashg`ulot. Mavzu: Dasturlash texnologiyasi va algoritm. Yuqori
va Quyi darajali dasturlash tillari va ularning turlari
2-amaliy mashg`ulot. Mavzu: Delphi, C++, Visual Basic dasturlarida sodda
masalalar bilan ishlash
Visual Basic dasturlash tili
Struktura boshqaruvchilari
Izoh: Biz struktura boshqaruvchilarini ham operator deb qaraymiz.
Yuqorida ko’rilgan operatorlar ifodalarda ishlatiladi. Hozirgi ko’rayotgan
operatorlar esa usha ifodalarni hisoblashni bajarishga mo’ljallanadi. Bu operatorlar
o’rtasidagi farqni tushunish mumkin.
1.Shartli operator If...End If
Bu operator u yoki bu amalni bajarish kerekmi yoki yo’qligi haqida qaror qabul
qilishda zarur. Boshqacha aytganda agar mantiqiy ifoda rost bo’lsa u holda
operator bjariladi. Agar yolg’on bo’lsa operator bajarilmaydi.
If
mantiqiy ifoda
Then
operator
Yoki murakkabi
If
mantiqiy ifoda
Then operatorlar guruppasi
End If
Birinchi holatda operator bitta keyingi holatda bir nechta operator.
Masalan:
If
(a = b)
And
(c <> d)
Then
b = d a = 20
End If
2. Shartli operator Select Case...End Select
Select Case konstrukturasi bitta ifodaning qiymatini tahlil qilish asosida “qaror
qabul” qiladi. Lekin bu ifoda Select Case satrida ko’rsatiladi:
Select Case
tahlil qilinadigan ifoda
Case
qiymat№1
Operatorlar guruhi
Case
qiymat№2
Operatorlar guruhi
Case
qiymat№N
Operatorlar guruhi
Case Else
operatorlar guruhi
End Select
3. For...Next sikl operatori
Bu sikl operatori hisoblagichning boshlang’ich va oxirgi qiymatlari oldindan
ma’lum bo’lganda qo’llaniladi. Operator sintaksisi quyidagicha:
For sikl hisoblagichi
= start
To
stop
Step
qadam operatorlar guruhi
Next [sikl hisoblagichi]
Sikl hisoblagichi nomi oldindan e’lon qilingan butunsonli o’zgaruvchi bo’lishi
mumkin. Qadam sikl hisoblagichiga har bir o’tishda orttirma beradi. Agar alohida
ko’rsatilmasa qadam 1 ga teng deb oliadi.
Misol:
Ushbu misolda iArray massivning barcha elementlariga 5 qiymati beriladi.
Dim
c
As Integer
Dim
iArray(10)
As Integer
For
c = 0
To
10
iArray(c) = 5
Next
c
4.For Each...Next sikl operatori
Operator sintaksisi:
For Each
ob’ekt nomi
In
kolleksiya nomi
Ob’ektlarustida amallar
Next
ob’ekt nomi
Misol:
Ushbu misolda formada yotuvchi barcha (Label) etiketlardagi BackColor
xossalarni o’zgartirish ko’rsatilgan
Dim
x
As Object
For Each
x
In
Me.Controls
If
TypeName(x) = "Label"
Then
x.BackColor = 0
End If
Next
x
4.
Do While...Loop / Do...Loop While sikl operatori
While sikli sintaksisi:
Do While
chiqish sharti
Operatorlar guruhi
Loop
Do
operatorlar guruhi
Loop While
chiqish
sharti
5.
Do Until...Loop / Do...Loop Until sikl operatori
Sintaksisi:
Dim
n
As
Integer
n =
100
Do
n =
n – 1
Debug
.Print n
Loop Until
n < 11
6.
Siklda chiqish Exit For / Exit Do
Exit...operatori yordamida ixtiyoriy paytda sikldan chiqish mumkin.
Misol:
Dim
n
As
Integer
n = 10
Do While
n >
1 n = n – 1
Debug
.Print n
If
n = 5
Then Exit Do
' Agar hisoblagich = 5, u holda
'sikldan chiqamiz
Loop
Misol. To`rtta sondan kattasini toppish
dasturi. Private Sub Command1_Click()
Dim A, B, C, D, R1, R2, MAX, MIN As Single
A
= Val(Text1.Text)
B
= Val(Text2.Text)
C
= Val(Text3.Text)
D
= Val(Text4.Text)
If A > B Then
R1 = A
Else
R1 = B
End If
If C > D Then
R2 = C
Else
R2 = D
End If
If R1 > R2 Then
MAX = R1
Else
MAX = R2
End If
If A < B Then
R1 = A
Else
R1 = B
End If
If C < D Then
R2 = C
Else
R2 = D
End If
If R1 < R2 Then
MIN = R1
Else
MIN = R2
End If
Text5.Text = Str(MAX)
Text6.Text = Str(MIN)
End Sub
Misol. Kiritilgan to`rt xonali sonning raqamlari yig`indisini topish.
Private Sub Command1_Click()
Dim intN, intKE, intKD, intKS, intKT, intS
As Integer a = Val(Text1.Text) intKE = intN
Mod 10 a = intN \ 10 intKD = intN Mod 10
intN = intN \ 10 intKS = intN Mod 10 intKT
= intN \ 10
intS = intKE + intKD + intKS + intKT
Text2.Text = Str(intS)
End Sub
Misol. 1 dan 10 gacha bo`lgan natural sonlar yig`inside.
Private Sub Command1_Click()
Dim a, s As
Integer a = 1
Do While a
<= 10 s = s +
a a = a + 1
Loop
Label1.Caption = s
End Sub
Misol.
ax
2
+bx+c=0
Kvadrat tenglama
ildizlarini toppish. Private Sub
CommandButton1_Click() a = Cells(1, 1) b =
Cells(1, 2) c = Cells(1, 3)
If a = 0 Then
Cells(1, 4) = "Kvadrat tenglama emas"
Else d = b * b -
4 * a * c
If d < 0 Then
Cells(1, 4) = "Yechim yo`q"
Else If d =
0 Then x =
-b / 2 * a
Cells(1, 4)
= x
Else If d > 0 Then
x1 = -b + Sqr(d) /
2 * a x2 = -b -
Sqr(d) / 2 * a
Cells(1, 4) = x1
Cells(1, 5) = x2
End If
End If
End If
End If
End Sub
Do'stlaringiz bilan baham: |