Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele For-silmukka | Ohjausrakenteet
Johdatus Golangiin

bookFor-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

index.go

copy
12345678
package 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

index.go

copy
12345678910
package 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:

question mark

Mikä on seuraavan silmukan tulosteen viimeinen rivi?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 6

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Awesome!

Completion rate improved to 1.96

bookFor-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

index.go

copy
12345678
package 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

index.go

copy
12345678910
package 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:

question mark

Mikä on seuraavan silmukan tulosteen viimeinen rivi?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 6
some-alt