AXV

Kotlin: sikllar va oraliqlar

for, while, do-while, ranges: in, downTo, step

9-sinfAndroid dasturlash5-hafta · 13-dars

Bugun nimalarni o'rganamiz?

for sikli

Oraliq bo'yicha takrorlash

downTo, step, while

Teskari sanash, qadam va shartli sikllar

break va continue

Siklni boshqarish va ichma-ich sikllar

Takrorlash

val ball = 75. when (ball) { in 70..89 -> "Yaxshi"; else -> "Boshqa" } nima qaytaradi?

75 70..89 oralig'iga kiradi, shuning uchun birinchi shart bajariladi.
01

for sikli

Oraliq bo'yicha takrorlash

for sikli qanday ishlaydi

Oraliq: 1..9 n =keyingi son Tana: n * n Oraliqtugadimi? Oraliq tugamaguncha tana takrorlanadi

for: kvadratlar jadvali


for (n in 1..9) {
    println("$n * $n = ${n * n}")
}
  
1..9 ikkala chegarani ham o'z ichiga oladi; 1 until 9 esa 9 ni kiritmaydi (1..8).

Mini-test

for (i in 1 until 5) println(i) qaysi sonlarni chiqaradi?

until oxirgi chegarani kiritmaydi.
02

downTo, step, while

Teskari sanash, qadam va shartli sikllar

while va do-while farqi

while: shart Tanabajariladi do-while: tana Sharttekshiriladi do-while kamida bir marta ishlaydi

while va do-while


var i = 10
while (i > 7) {
    println(i)
    i--
}
var j = -1
do {
    println("j = $j")
    j--
} while (j > 0)
  
do-while da shart noto'g'ri bo'lsa ham tana bir marta bajariladi: j = -1 chop etiladi.

Mini-test

var i = 5; while (i < 3) { println(i) } nechta marta chop etadi?

Shart boshidan noto'g'ri, while tanasi ishlamaydi.
03

break va continue

Siklni boshqarish va ichma-ich sikllar

break va continue yo'li

Sikl boshlandi n == 5 ? continue:o'tkaz break: chiq continue qadamni tashlaydi, break siklni tugatadi

continue va ichma-ich sikl


for (n in 1..7) {
    if (n == 5) continue
    print("$n ")
}
println()
for (a in 1..3) {
    for (b in 1..3) print("${a * b}\t")
    println()
}
  
continue da 5 tashlab o'tiladi: natija 1 2 3 4 6 7. Ichki sikl har bir a uchun qayta ishga tushadi.

Mini-test

for (n in 1..5) { if (n == 3) break; print(n) } nima chiqaradi?

n == 3 bo'lganda sikl to'xtaydi, 3 chop etilmaydi.

for va while: qaysi birini tanlaymiz?

for

Takrorlash soni oldindan ma'lum: for (i in 1..10)
VS

while

Takrorlash soni noma'lum, shart bo'yicha: while (qoldiq > 0)

Soni ma'lum bo'lsa for, shart bo'yicha bo'lsa while qulay.

Oraliq turlari. Bosing

1..5

bosing

1, 2, 3, 4, 5: oxirgi chegara ham kiradi

1 until 5

bosing

1, 2, 3, 4: oxirgi chegara kirmaydi

5 downTo 1

bosing

5, 4, 3, 2, 1: kamayish tartibida

1..10 step 3

bosing

1, 4, 7, 10: har 3-son

Siklni tanlash bosqichlari

1. Oraliq bormi?

Sonlar chegarasi ma'lum bo'lsa for ishlating.

2. Shart bormi?

Qachon to'xtash noma'lum bo'lsa while.

3. Kamida 1 marta?

Tana kamida bir marta ishlashi kerak bo'lsa do-while.

Sikllar yonma-yon

SiklShart qachonEng kam ishlashi
fororaliq tugaguncha0 marta
whiletana oldidan0 marta
do-whiletana keyin1 marta
breaksiklni to'xtatadi-
continueqadamni o'tkazadi-

Pastga bosing: yig'indi qoidasi

Sikl yozish tartibi

  1. Takrorlanadigan amalni aniqlang.
  2. Sikl turini tanlang: for, while yoki do-while.
  3. Oraliq yoki shartni yozing va tananing ichida o'zgaruvchini yangilashni unutmang.

Teskari hisob


for (i in 5 downTo 1) {
}
  

Teskari hisob


for (i in 5 downTo 1) {
    println(i)
}
println("Start!")
  

Raqamlarda sikllar

0
sikl turi: for, while, do-while
0
oraliq kalit so'zi: .., until, downTo, step
0
1..9 oralig'idagi sonlar soni

Eslang: 1..9 - 9 ta son, 1 until 9 - 8 ta son.

Amaliy topshiriq 20 daqiqa

OsonKvadratlar jadvali: for va 1..9 oralig'i bilan 1 dan 9 gacha sonlarning kvadratlarini chiqaring.
O'rtaTeskari hisob va qadam: 10 downTo 1 bilan teskari sanang, so'ng 1..20 step 5 bilan har 5-sonni chiqaring.
QiyinKo'paytirish jadvali va to'xtatish: Ichma-ich sikl bilan 1 dan 5 gacha ko'paytirish jadvalini chiqaring. Natija 20 dan oshsa ichki siklni break bilan to'xtating, 3 ga bo'linadigan natijani continue bilan tashlab o'ting.

Dars xulosasi

for

Oraliq bo'yicha: .., until, downTo, step.

while / do-while

Shart oldin yoki keyin tekshiriladi.

break / continue

To'xtatish va qadamni o'tkazish; ichma-ich sikllar.

Uyga vazifa: 1 dan 20 gacha juft sonlar, teskari hisob, ko'paytirish jadvali.

Keyingi dars: Funksiyalar (1-qism)

Funksiya e'lon qilish, parametrlar, standart qiymatlar

5-hafta · 15-dars