For … Nexttuzilmasi For … Nexttuzilmasi
Arifmetik progressiyaning dastlabki 100 ta elementinining yig‘indisini hisoblash.
Arifmetik progressiya o‘zining a0 nollik elementi va d ayirmasi bilan beriladi. Arifmetik progressiyaning har bir kelasi elementi formulasi ak =ak-1 + d bilan hisoblanadi.
Arifmetik progressiyaning dastlabki 100 ta elementinining yig‘indisi quyidagicha:
S = ∑ak, bu erda k 0 dan 100 gacha bo‘lgan qiymatlarni ketma-ket qabul qiladi.
Algoritmi
a0 va d larni kiritingiz
Arifmetik progressiyaning yig‘indisi - S o‘zgaruvchisiga a0 ning qiymatini o‘zlashtiringiz
For K = 1 To 100 … Next siklida har bir iteratsiyada arifmetik progressiyaning har bir elementini va yig‘indining qiymatini quyidagi formula yordamida hisoblanadi
ak =ak-1 + d S = S + ak
S ni chiqarish
11.30-rasm
Ob’yekt
|
Xossa
|
O‘rnatilgan qiymatlari
|
Form1
|
Caption
|
For … Nexttuzilmasi
|
Label1
|
Caption
|
Arifmetik progresiyaning nolinchi elementini kiriting
|
Label2
|
Caption
|
Arifmetik progresiyaning ayirmasini kiriting
|
Label3
|
Caption
|
Arifmetik progressiyaning dastlabki 100 ta elementining yig'indisi
|
Command1
|
Caption
|
Hisoblash
|
Command2
|
Caption
|
Tugatish
|
Text1, Text2, Text3
|
Text
|
Text xossasi maydonini tozalash
|
11.31-rasm
Blok – sxemasi
Dastur kodi
Option Explicit
Private Sub Command1_Click()
Dim A0, D, S As Double
Dim K As Integer
A0 = Val(Text1.Text)
D = Val(Text2.Text)
S = A0
For K = 1 To 100
A0 = A0 + D
S = S + A0
Next
Text3.Text = Str(S)
End Sub
Private Sub Command2_Click()
End
End Sub
11.32-rasm
15-misol: For … Nexttuzilmasini ishlatish
M va A butun sonlarini kiritish. 1 dan M gacha bo‘lgan natural sonlari kublarining yig‘indisi S ni hisoblas. Agar yig‘indi A dan oshib ketsa, hisoblash to‘xtatiladi. Olingan yig‘indi S ni va natural qatorning oxirgi sonining qiymati K ni chiqarish kerak.
Algoritm
M va A ni kiriting.
Kublar yig‘indisi S o‘zgaruvchisiga 0 qiymatini o‘zlashtiringiz.
For K = 1 To М … Next siklidagi har bir iteratsiyada K ning kubi qiymatini va quyidagi formula bo‘yicha yig‘indini hisoblangiz
С = К3 S = S + С
Har bir iteratsiyada S ning qiymati A (S < A) nazorat qiymatidan oshib ketmasligini tekshirish kerak. Agar S ni qiymati A dan oshib ketsa, siklni to‘xtatish kerak, aks holda siklning keyingi iteratsiyasiga o‘tadi.
S ni chiqarish
Sikl iteratsiyasining bajarilishini tugatmasdan For … Next siklidan chiqish sikl ichiga joylashtiriladigan Exit For operatori yordamida amalgam oshiriladi
11.33-rasm
Ob’yekt
|
Xossa
|
O‘rnatilgan qiymatlari
|
Form1
|
Caption
|
For … Next sikli 2-misol
|
Label1
|
Caption
|
Yig‘indining elementlari soni M butun sonini kiriting
|
Label2
|
Caption
|
Yig‘indining yuqori chegarasi A butun sonini kiriting
|
Label3
|
Caption
|
Qo‘shiluvchilarning soni
|
Label4
|
Caption
|
Olingan yig‘indi
|
Command1
|
Caption
|
Yig‘indini hisoblash
|
Command2
|
Caption
|
Chiqish
|
Text1, Text2, Text3, Text4
|
Text
|
Text xossasi maydonini tozalash
|
11.34-rasm
Blok – sxema
Dastur kodi
Option Explicit
Private Sub Command1_Click()
Dim M, A As Long
Dim S, K, C As Long
M = Val(Text1.Text)
A = Val(Text2.Text)
S = 0
For K = 1 To M
C = K ^ 3
S = S + C
If S > A Then
K = K + 1
Exit For
End If
Next K
Text3.Text = Str(K - 1)
Text4.Text = Str(S)
End Sub
Private Sub Command2_Click()
End
End Sub
11.35-rasm
11.36-rasm
Sharti oldinda va oxirida berilgan sikllar
Bazi bir holatlarda sikl tanasining necha marta bajarilishini oldindan aniqlab bo‘lmaydi. Bunday holatlarda sikldagi shartning qiymati True bo‘lguncha bajariladi.
Bunaqangi sikllarning ikki holati mavjud:
Sikl sharti iteratsiyaga har bir kirishidan oldin tekshiriladi (sharti oldinda berilgan sikllar)
Sikl sharti har bir iteratsiyaning bajarilishidan so‘ng tekshiriladi (sharti oxirirda berilgan sikllar)
11.9.1. Sharti oldinda berilgan Do While siklining sintaksisi
Do While Shart
Konstruktsiya
Loop
Do While ... Loop konstruktsiyasida berilgan sikl operatori undagi berilgan shartning qiymati True bo‘lguncha davom etadi. Shart argumenti mantiqiy ifoda bo‘lib, siklga har bir kirishda tekshiriladi. Agar uning qiymati True bo‘lsa, Do While va Loop xizmatchi so‘zlari orasidagi buyruqlar ketma-ketligi bajariladi. Bu konstruktsiya sikl tanasini tashkil qiladi. Agar siklga kirishda shartning qiymati False bo‘lsa, sikldan chiqadi va boshqarish Loop dan keyingi konstruktsiyaga beriladi. Shunaqangi holat mavjudki, ya’ni sikl ichidagi operator bir marta ham bajarilmasligi mumkin. Bu holat sikl sharti birinchi marta tekshirilganda uning qiymati False bo‘lsa.
Yo‘q
Shart?
Hа
Sikl tanasi
konstruktsiyasi
11.9.2. Sharti oxirida berilgan sikl
Do
Konstruktsiyalar
Loop While Shart
Bu sikl strtukturasini ishlatishda shart sikl oxirida tekshiriladi. Bu holatda sikl tanasi kamida bir marta bajariladi va undan keyin shart tekshiriladi.
Sikl tanasi
konstruktsiyasi
Hа Shart? Yo‘q
Do. . .Loop sikl konstruktsiyasining yana bir ko‘rinishi bor. Ular avvalgi ko‘rilgan sikllar bilan bir xil, lekin sikl shartining qiymati False bo‘lguncha bajariladi.
11.9.3. Sharti oldinda berilgan sikl
Do Until Shart
konstruktsiya
Loop
Ha
Shart?
Yo‘q
Sikl tanasi
konstruktsiyasi
Dostları ilə paylaş: |