Funktio

Ohjelmointikielissä funktio suorittaa aina jonkin tehtävän tai tehtäviä. Funktiolle annetaan aina yksilöllinen nimi (ei ääkkösiä jne.), jolla sitä kutsutaan aina tarvittaessa. Funktiota ei siis suoriteta aina, vaan vasta kutsuttaessa.

Sivu voi kutsua samaa funktiota useita kertoja, funktion sisältä voidaan kutsua toisia funktioita. Funktio voi saada alkuarvoja parametrina ja se voi myös palauttaa arvoja.

Funktion kirjoittaminen

Brythonissa (ja Pythonissa) funktio määritellään def-sanalla. Tämän sanan jälkeen kirjoitetaan funktion nimi ja merkit (): heti nimen perään.

Funktion käskyt kirjoitetaan sisennettynä nimi-rivin alle. Sisennys tehdään tab-napilla. Muista, että jokainen käskyrivi loppuu puolipisteeseen (;) katso alla.

Seuraavaksi tarvitsemme vain käskyn, mikä liittää napin klikkauksen funktioon. Tämä tehdään rivillä 16:

Käskyssä etsitään ensin documentistä elementti id:llä "nappi1". Tähän elementtiin liitetään (.bind) tapahtumafunktio "click", joka suorittaa funktion nimeltä minunfunktio.

Huomaa, että tämä käsky kirjoitetaan ilman sisennystä, koska se ei kuulu funktioon. Se liittää funktion nappiin, joten se pitää suorittaa heti sivun latauduttua.

Muuttujien näkyminen funktion sisällä

Joskus tarvitsemme muuttaa muuttujaa, mikä on sijoitettu funktion ulkopuolelle. Tällöin muuttuja täytyy esitellä funktion sisällä rivillä:

Esimerkiksi:

Funktion parametrit

Funktiolle voidaan välittää parametrinä arvoja, yksi tai useampia. Ne tulevat funktiokutsussa sulkeiden sisään. Useamman parametrin tapauksessa pilkuilla erotettuina. Katso alla riviä 17, jossa kutsutaan funktiota sanojotain ja funktiolle lähetetään arvo "muuta".

Vastaanottavassa funktiossa nimen jälkeisissä sulkeissa on parametrin vastaanottava muuttujan nimi (tai vastaanottavat muuttujat pilkuilla erotettuna). Alla olevassa tapauksessa funktiossa sanojotain on rivillä 12 sulkeissa muuttujan nimi teksti. Tämän saaman arvon funktio tulostaa ruutuun, eli tässä tapauksessa tekstin "muuta";

Funktion palautusarvo

Funktio voi palauttaa arvon return -käskyllä.

Alla olevassa esimerkissä funktio kysy palauttaa käyttäjän antaman arvon takaisin funktiolle tervehdi rivillä 14. Funktio tervehdi vastaanottaa arvon rivillä 17 ja tulostaa ruudulle kyseisen arvon rivillä 18.

Huomaa! Rivillä 10 tuomme ohjelmamme käyttöön uudet valmiin funktiot prompt ja alert.

Prompt saa parametriksi sulkeiden sisään kysymyksen, mikä kysytään käyttäjältä, rivillä 12. Funktio palauttaa käyttäjän kirjoittaman arvon.
Alert saa parametriksi sulkeiden sisään merkkijonon, mikä ilmoitetaan käyttäjälle avautuvana ikkunana.


Tehtävä 1:

Tehtävä 2: