For-silmukka
Ohjelmoinnissa silmukka mahdollistaa koodilohkon suorittamisen toistuvasti, joko ennalta määrätyn määrän kertoja tai kunnes ehto täyttyy. Go-kielessä silmukan perussyntaksi on seuraava:
for initialization; condition; post {
// Code to be executed
}
initialization-osiossa luodaan ja alustetaan uusi kokonaislukumuuttuja. condition-osiossa käytetään totuusarvolauseketta, joka tarkistetaan jokaisella kierroksella, ja silmukka jatkaa koodin suorittamista niin kauan kuin ehto on true. post-osiossa suoritetaan lause jokaisen kierroksen jälkeen.
Huomio
Iteraatio silmukassa tarkoittaa jokaista yksittäistä silmukan koodilohkon suorittamista. Se edustaa yhtä kierrosta tai toistoa silmukassa.
Tässä on esimerkki for-silmukasta, joka havainnollistaa käsitettä:
index.go
12345678package main import "fmt" func main() { for i := 1; i < 10; i++ { fmt.Println(i) } }
Alustimme muuttujan i arvolla 1. Ehtona määriteltiin i < 10, joka on aluksi true; siksi silmukka suoritetaan. Jokaisen iteraation jälkeen silmukka suorittaa i++, kasvattaen i:n arvoa yhdellä. Yhdeksän iteraation jälkeen ehto i < 10 muuttuu epätodeksi, ja silmukka päättyy. Alla oleva kaavio havainnollistaa silmukan suoritusta:
Tämän tyyppisellä silmukalla voidaan määrittää, kuinka monta kertaa koodi suoritetaan. Jos kuitenkin halutaan suorittaa koodilohko, kunnes tietty ehto täyttyy, voidaan käyttää seuraavaa syntaksia:
for condition {
// Code to be executed
}
Tämän tyyppistä silmukkaa kutsutaan muissa ohjelmointikielissä usein "while-silmukaksi", koska se luodaan yleensä while-avainsanalla. Go-kielessä käytetään kuitenkin vain yhtä avainsanaa for molempien silmukoiden luomiseen.
Alla on käytännön esimerkki siitä, miten tätä voidaan hyödyntää:
index.go
12345678910package main import "fmt" func main() { var value float64 = 100 for value > 0.5 { value = value / 2 fmt.Println(value) } }
Yllä oleva ohjelma jakaa luvun 2:lla toistuvasti, kunnes se on pienempi kuin 0.5. Alla oleva kaavio auttaa ymmärtämään tämän silmukan suoritusta paremmin:
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 1.96
For-silmukka
Pyyhkäise näyttääksesi valikon
Ohjelmoinnissa silmukka mahdollistaa koodilohkon suorittamisen toistuvasti, joko ennalta määrätyn määrän kertoja tai kunnes ehto täyttyy. Go-kielessä silmukan perussyntaksi on seuraava:
for initialization; condition; post {
// Code to be executed
}
initialization-osiossa luodaan ja alustetaan uusi kokonaislukumuuttuja. condition-osiossa käytetään totuusarvolauseketta, joka tarkistetaan jokaisella kierroksella, ja silmukka jatkaa koodin suorittamista niin kauan kuin ehto on true. post-osiossa suoritetaan lause jokaisen kierroksen jälkeen.
Huomio
Iteraatio silmukassa tarkoittaa jokaista yksittäistä silmukan koodilohkon suorittamista. Se edustaa yhtä kierrosta tai toistoa silmukassa.
Tässä on esimerkki for-silmukasta, joka havainnollistaa käsitettä:
index.go
12345678package main import "fmt" func main() { for i := 1; i < 10; i++ { fmt.Println(i) } }
Alustimme muuttujan i arvolla 1. Ehtona määriteltiin i < 10, joka on aluksi true; siksi silmukka suoritetaan. Jokaisen iteraation jälkeen silmukka suorittaa i++, kasvattaen i:n arvoa yhdellä. Yhdeksän iteraation jälkeen ehto i < 10 muuttuu epätodeksi, ja silmukka päättyy. Alla oleva kaavio havainnollistaa silmukan suoritusta:
Tämän tyyppisellä silmukalla voidaan määrittää, kuinka monta kertaa koodi suoritetaan. Jos kuitenkin halutaan suorittaa koodilohko, kunnes tietty ehto täyttyy, voidaan käyttää seuraavaa syntaksia:
for condition {
// Code to be executed
}
Tämän tyyppistä silmukkaa kutsutaan muissa ohjelmointikielissä usein "while-silmukaksi", koska se luodaan yleensä while-avainsanalla. Go-kielessä käytetään kuitenkin vain yhtä avainsanaa for molempien silmukoiden luomiseen.
Alla on käytännön esimerkki siitä, miten tätä voidaan hyödyntää:
index.go
12345678910package main import "fmt" func main() { var value float64 = 100 for value > 0.5 { value = value / 2 fmt.Println(value) } }
Yllä oleva ohjelma jakaa luvun 2:lla toistuvasti, kunnes se on pienempi kuin 0.5. Alla oleva kaavio auttaa ymmärtämään tämän silmukan suoritusta paremmin:
Kiitos palautteestasi!