Sikl operatorlari
Go'da faqat bitta for sikl operatori mavjud.
- Asosiy sikloperatori nuqat-virgul bilan ajratilgan uchta komponintandan iborat bo'ladi.
- aniqash: interatsiydan oldin bajariladi. Bu qism odatada o'zgaruvchilar e'lon qilish qismi hisoblanadi
va bu qismda e'lon qilingan o'zgaruvchilar faqat
for
sikl doirasida amal qiladi. - shart: har bir interatsiyadan oldin bajariladi. Bu qism sikl qachon to'xtashini aniqlash uchun hizmat qiladi ya'ni qachonki shart yolg'on bo'lsa sikl to'xtaydi.
- yangilash: har bir interatsiya oxirida bajariladi. Bu qism har bir interatsiyadan so'ng aniqlash qismida e'lon qilingan o'zgaruvchini yangilash uchun hizmat qiladi.
- aniqash: interatsiydan oldin bajariladi. Bu qism odatada o'zgaruvchilar e'lon qilish qismi hisoblanadi
va bu qismda e'lon qilingan o'zgaruvchilar faqat
Go'da for sikl operatori sintaksisi.
1-misol
- i := 0; - Takrorlanish hisoblagichini (i) boshlang'ich qiymatiga 0 qilib o'rnating
- i < 10; - i 10 dan kichik bo'lsa, siklni davom ettiring
- i++ - Har bir takrorlanishda hisoblagich qiymatini 1 ga oshiring
Info
Mustaqil i++
ni i += 2
o'zgartirib siab ko'ring.
Natija:
2-misol.
Faqat shart qismidan foydalanish.
Natija:
3-misol.
Cheksiz sikldan hosil qilish uchun for sikl operatorini birorta qismi kiritilmaydi, sikl to'xtatilishi uchun termenal yopilishi zarur yoki operatsion tizimning o'zi siklni to'xtatadi.
4-misol. 1 dan 10 gacha bo'lgan sonlardan faqat juftlarini chiqarish
package main
import "fmt"
func main() {
for i := 1; i < 10; i++ {
if i%2 == 0 {
fmt.Println(i)
}
}
}
Natija:
5-misol. 1 dan 10 gacha bo'lgan sonlardan faqat juftlarini chiqarish.
Natija:
4-misol. 1 dan 10 gacha bo'lgan sonlardan faqat toqlarini chiqarish.
package main
import "fmt"
func main() {
for i := 1; i < 10; i++ {
if i%2 == 1 {
fmt.Println(i)
}
}
}
Natija: