Ensimmäiset askeleet¶
Racketin ottaminen käyttöön¶
Tämän materiaalin ohjelmointiharjoitukset tehdään ohjelmassa DrRacket. Lataa omalle käyttöjärjestelmällesi sopiva versio Racketin sivuilta.
Kun DrRacket avataan ensimmäisen kerran, ohjelmointikieltä ei ole vielä valittuna.
Tämän näkee alaosan punaisesta viestistä No language chosen
.
Kieli valitaan ylhäältä valikosta
tai painamalla Ctrl-l
. Klikkaa tekstiä Beginning Student
ottaaksesi kielen käyttöön.
Kun olet sulkenut kielivalintaikkunan, paina vielä lopuksi ylhäältä Run
-nappulaa.
Samasta valikosta voit myös vaihtaa kieltä myöhemmin, mikäli harjoitus niin vaatii.
Arvot ja funktiot¶
DrRacketissä on kaksi erilaista aluetta.
Yläosaan kirjoitetaan kaikki tallennettava ja
alaosaan voi laittaa nopeita kokeiluja.
Yläosan koodi suoritetaan vasta, kun yläällä olevaa Run
-nappulaa painetaan.
Alaosassa taas riittää, kun painaa Enter
.
Kokeile kirjoittaa alaosaan:
42
1/3
0.3
"Moi!"
true
false
Voit myös liittää kuvia leikepöydältä suoraan DrRackettiin.
Vihje
Saat kopioitua kuvan webbisivulta leikepöydälle klikkaamalla
kuvaa oikealla hiiren näppäimellä (mäkeillä pitää klikata Ctrl
pohjassa)
ja valitsemalla valikosta Kopioi kuva
tai vastaava komento
(komennon tarkka kirjoitusasu riippuu selaimesta).
DrRacketissä voi liittää kuvia klikkaamalla oikealla hiiren näppäimellä
ja valitsemalla Paste
, painamalla Ctrl+v
(mäkeillä Cmd+v
)
tai valikoiden kautta .
Nämä kaikki olivat arvoja. DrRacket antaa aina jokaisen komennon jälkeen takaisin lopputuloksen arvon, joka tässä tapauksessa on se mitä itse kirjoitit.
Kokeile seuraavaksi näitä komentoja:
(+ 1 2)
(/ 1 3)
(string-length "Moi")
(string-length "Heippa, kaikki!")
(= 10 10)
(> 1/3 0.5)
DrRacket ei enää anna takaisin täsmälleen samaa, vaan se laskee annetun komennon arvon. Ohjelmoinnissa tällasia komentoja sanotaan funktiokutsuiksi. Ne alkavat aina sululla, jonka jälkeen tulee funktion nimi. Seuraavaksi niille annetaan välilyönnillä toisistaan erotettuja argumentteja, eli jotain tietoja, joita funktio käyttää. Viimeisen argumentin jälkeen tulee sulkeva sulku.
Argumentit ovat yksinkertaisimmillaan suoraan kirjoitettuja arvoja. Mutta koska funktiokutsujen lopputulos on aina arvo, argumenteiksi voi laittaa myös muita funktiokutsuja, jopa saman funktion kutsuja! Esimerkiksi jakolaskufunktion argumenttina voi olla toinen jakolasku.
Muista
Saat apua kaikista funktioista laittamalla kursorin funktion
nimen päälle ja painamalla F1
.
Myös osa nimestä riittää, jos et esimerkiksi muista funktion koko nimeä.
Jos käytät kannettavaa tietokonetta, voi olla että joudut painamaan myös
Fn
-näppäintä saadaksesi F1:n.
Arvot ovat aina jotakin tyyppiä.
Ylempänä olevat esimerkit olivat numeroita,
merkkijonoja eli tekstiä,
booleaneja eli loogisen päättelyn vastaus kyllä tai ei (tosi ja epätosi)
ja kuvia.
Huomaa, että numero 42
ja merkkijono "42"
ovat eri asioita!
Ensimmäinen on matemaattinen käsite, toinen kaksi merkkiä.
Funktioiden argumenttien pitää olla tiettyä tyyppiä.
Esimerkiksi koska +
käsittelee numeroita,
mutta ei tiedä mitä tehdä tekstille,
(+ 1 2)
toimii, mutta (+ "1" "2")
ei.
Rationaaliluvut voidaan ilmoittaa Racketissä kahdella lailla. Oletuksena DrRacket käyttää desimaalimuotoa, jonka toistuvan osuuden päälle piirretään viiva (eli Racket muistaa rationaaliluvut tarkasti). Samasta valikosta, mistä käytetty kieli valitaan, voi valita myös rationaalimuodon (
).