Loopi kasutatakse programmeerimisel konkreetse koodiploki kordamiseks. Selles artiklis õpitakse Kotlini programmeerimisel silmuseid looma ja tegema.
Loopi kasutatakse programmeerimisel konkreetse koodiploki kordamiseks, kuni teatud tingimus on täidetud (testi avaldis on false)
.
Silmused muudavad arvutid huvitavaks masinaks. Kujutage ette, et peate lause ekraanile 50 korda printima. Noh, saate seda teha, kui kasutate väljavõtet 50 korda (ilma silmuseid kasutamata). Kuidas oleks, kui peaksite lause miljon korda printima? Peate kasutama silmuseid.
Te saate teada kahest silmusest while
ja do… while
sellest artiklist näidete abil.
Kui olete tuttav ajaga ja teete … samal ajal kui Java-tsüklid on teile tuttavad ka Kotlinis.
Kotlin kui Loop
while
Silmuse süntaks on:
while (testExpression) (// kodeerib silmuse while sisemust)
Kuidas silmus töötab?
Sulgudes olev testväljend on Boole'i väljend.
Kui test ekspressioon hinnati true
,
- käske while-tsükli sees täidetakse.
- seejärel hinnatakse testi ekspressiooni uuesti.
See protsess kestab seni, kuni testi ekspressioon on hinnatud false
.
Kui test ekspressioon hinnati false
,
- samal ajal kui silmus on lõpetatud.
Loopi voo diagramm
Näide: Kotlin kui Loop
// Programmeerige rida 5 korda fun main(args: Array) ( var i = 1 while (i <= 5) ( println("Line $i") ++i ) )
Programmi käivitamisel on väljund järgmine:
1. rida 2. rida 3. rida 4. rida 5. rida
Teade, ++i
lause while
tsükli sees . Pärast 5 iteratsiooni suurendatakse muutujat i väärtuseni 6. Seejärel i <= 5
hinnatakse false
testväljendit ja silmus lõpetatakse.
Kui silmusekehal on ainult üks lause, pole lokkisulgusid vaja kasutada ( )
.
Näide: arvutage looduslike arvude summa
// Program to compute the sum of natural numbers from 1 to 100. fun main(args: Array) ( var sum = 0 var i = 100 while (i != 0) ( sum += i // sum = sum + i; --i ) println("sum = $sum") )
Programmi käivitamisel on väljund järgmine:
summa = 5050
Siin initsialiseeritakse muutuja summa 0-ks ja i initsialiseeritakse väärtuseks 100. Igas it-it-i loop-i iteratsioonis määratakse muutuja summa sum + i
ja i väärtust vähendatakse 1 võrra, kuni i on võrdne 0. Parema visualiseerimise jaoks
1. iteratsioon: summa = 0 + 100 = 100, i = 99 2. iteratsioon: summa = 100 + 99 = 199, i = 98 kolmas iteratsioon: summa = 199 + 98 = 297, i = 97…… 99. kordus: summa = 5047 +2 = 5049, i = 1 100. kordus: summa = 5049 + 1 = 5050, i = 0 (siis lõpeb silmus)
Testi väljenduse ja selle hindamise kohta lisateabe saamiseks külastage võrdlus- ja loogikaoperaatoreid.
Kotlin teeb … samal ajal kui Loop
do… while
Loop on sarnane while
loop ühe Peamine erinevus. do… while
Silmuse keha käivitatakse üks kord enne testi avaldise kontrollimist.
Selle süntaks on:
do (// koodid do while loopi sisemuses) while (testExpression);
Kuidas … kui silmus töötab?
do
Konstruktsioonikeha sees olevad koodid täidetakse üks kord (ilma testiExpression kontrollimata). Seejärel kontrollitakse testi väljendit.
Kui testiekspressiooni väärtuseks hinnatakse true
, käivitatakse silmuse kehas olevad koodid ja testavaldis hinnatakse uuesti. See protsess kestab seni, kuni testi ekspressioon on hinnatud false
.
Kui testi avaldise väärtus on hinnatud false
, do… while
lõpeb silmus.
Voo diagramm teha … samal ajal Loop
Näide: Kotlin teeb … samas Loop
Allolev programm arvutab kasutaja sisestatud numbrite summa, kuni kasutaja sisestab 0.
Kasutajalt sisendi saamiseks readline()
kasutatakse funktsiooni. Soovitatav kirjand: Kotlini põhisisend
fun main(args: Array) ( var sum: Int = 0 var input: String do ( print("Enter an integer: ") input = readLine()!! sum += input.toInt() ) while (input != "0") println("sum = $sum") )
Programmi käivitamisel on väljund umbes selline:
Sisestage täisarv: 4 Sisestage täisarv: 3 Sisestage täisarv: 2 Sisestage täisarv: -6 Sisestage täisarv: 0 summa = 3