(toiminnot)

hwechtla-tl: Teema 5: logokin tahtoo opettajaksi!

Kierre.png

Mikä on WikiWiki?
nettipäiväkirja
koko wiki (etsi)
viime muutokset


Tätä harjoitusta varten sinun pitää hankkia oppilaan oppilaan oppilas, mutta vasta loppuvaiheessa, kun olen opettanut sinut opettamaan Logoa opettamaan asioita. Valitse tarkoitukseen joku viaton koekaniini. Isä, äiti tai vastaava käy erinomaisesti.

Harjoitus 5a: kyselemistä

Opettajat usein kyselevät asioita. (Vanhanaikaista kysymysten toistamiseen perustuvaa opetustapaa kutsutaan trilliksi.) Logo on helppoa saada kysymään jotain. Kokeile vaikka tätä:

? kysy [paljonko on 2 + 2?]

Kirjoita myös kysymykseen jokin vastaus. Myös vastauksen perään pitää painaa rivinvaihtoa eli enter-näppäintä, jotta Logo tietää, että olet kirjoittanut vastauksen loppuun. Jos vastaan "viisi tuhatta", saan tällaista näytölleni:

? kysy [paljonko on 2 + 2?]
paljonko on 2 + 2? viisi tuhatta
tulos on [viisi tuhatta], mutta mitä sillä tehdään?

Miksi Logo sanoo näin? Koska emme ole kertoneet sille, mitä vastauksella pitäisi tehdä.

Harjoitus 5b: korvien tukkimista

Palaamme kohta siihen, mitä kaikkea vastauksella voi tehdä, mutta tehdään ensiksi niin, että vastaus vain heitetään roskakoriin. Tämän voi tehdä "muutenvaan"-komennolla. "muutenvaan"-komennon perään voi siis kirjoitella mitä tahansa, joka tuottaa jonkin tuloksen (kuten yhteenlasku tuottaa summan tai kysymys vastauksen), eikä se tee näillä tuloksilla mitään:

? muutenvaan 3 + 2
? muutenvaan [olet hauska ihminen]
? muutenvaan kysy [paljonko on 2 + 2?]
paljonko on 2 + 2? jotain
? 

Nyt voimme tehdä pienen opetusohjelman:

? miten kysele
> muutenvaan kysy [Milloin oli toinen maailmansota?]
> sano [Hieno vastaus! Olet oikein taitava.]
> valmis

Kokeillaanpa tätä opetusohjelmaa:

? kysele
Milloin oli toinen maailmansota? joskus
Hieno vastaus! Olet oikein taitava.

Harjoitus 5c: rasittavia opettajia

Kuten huomaat, Logo ei nyt tosin kiinnitä mitään huomiota siihen, mitä vastaat, mutta se sentään osaa olla kannustava, mikä saattaisi olla vaikeaa ihmisopettajalle vastaavassa tilanteessa. Koska sinä opetat Logoa opettamaan, sinä myös voit päättää, onko se oppilaalleen mukava vai inhottava:

? miten kysele.masentavasti
> muutenvaan kysy [Mikä on Ruotsin kuninkaan nimi?]
> sano [Ai jaa. Voisit yrittää edes vähän enemmän.]
> valmis

Tietokoneet ovat hyviä toistamaan, joten ne on helppo laittaa tekemään trillejä:

? toista 10 [kysele kysele.masentavasti]
Milloin oli toinen maailmansota? 094
Hieno vastaus! Olet oikein taitava.
Mikä on Ruotsin kuninkaan nimi? Kalle
Ai jaa. Voisit yrittää edes vähän enemmän.
Milloin oli toinen maailmansota? en tiedä
Hieno vastaus! Olet oikein taitava.
Mikä on Ruotsin kuninkaan nimi? Kaarle Kustaa
Ai jaa. Voisit yrittää edes vähän enemmän.
...

Harjoitus 5d: vastausten tarkastelu

Noniin, hienoa, olemme tehneet kannustavia ja masentavia kyselyitä, mutta kunnon opettajahan myös kuuntelee (ainakin vähän), mitä oppilas vastaa. Kysy-komentohan tosiaan antaa meille myös vastauksen, jonka ohjelman käyttäjä kirjoittaa, ja sillä voimme tehdä kaikenlaista hauskaa. Käyttäjän kirjoittama vastaus on kysy-komennon tulos. Sitä voi vaikkapa vertailla oikeaan tai muuten vain haluamaamme tulokseen. Kokeile tätä:

? sano samatko kysy [2+2?] [4]
2+2? 4
joo
? sano samatko kysy [2+2?] [4]
2+2? noin 7
ei

Logo kertoo, onko vastauksesi kysymykseen "2+2?" sama kuin 4. Käytämme tässä "samatko"-komentoa, joka syö kaksi syötettä, vertailee niitä toisiinsa, ja komennon tuloksena on "joo", jos ne olivat samat, "ei" jos eivät olleet. (Seuraavassa teemassa tarkastellaan tarkemmin, mitä tarkoittaa, että komennolla on jokin "tulos".)

Harjoitus 5e: tee näin tai noin

Jos haluat tehdä jotain sen perusteella, onko käyttäjän vastaus oikein vai ei, tarvitset "riippuen"-komentoa tai "onko"-komentoa. Kokeile seuraavaa:

? riippuen [samatko kysy [2+2:] [4]] [sano [jee!]] [sano [eikun 4]]
2+2: 22
eikun 4
? riippuen [samatko kysy [2+2:] [4]] [sano [jee!]] [sano [eikun 4]]
2+2: 4
jee!

"riippuen"-komento ottaa kolme syötettä: yhden, joka on "joo" tai "ei", toisen, joka tehdään, jos ensimmäinen syöte oli "joo", ja kolmannen, joka tehdään, jos ensimmäinen syöte oli "ei". Nyt siis, kun "samatko"-komento laskee, oliko käyttäjän vastaus sama kuin 4, niin "riippuen"-komento sanoo joko "jee!" jos oli tai "eikun 4" jos ei ollut.

Jos olet kirjoittamassa määrittelyä, voit käyttää riippuen-komennon pidempää ja vähän selkeämpää muotoa, jossa on kolme osaa. Ensimmäisessä, "onko"-komennossa, kerrotaan, mitä pitäisi selvittää. Toisessa, "joson"-komennossa, määritetään, mitä tehdään, jos onko-komennon syöte oli "joo". Kolmannessa, "josei"-komennossa, puolestaan kerrotaan, mitä tehdään, jos onko-komennon syöte oli "ei". Tehdäänpä siis esimerkiksi tällainen kyselyohjelma:

? miten kysely2
> onko samatko kysy [Mikä on Ruotsin paavin nimi?] [ei mikään]
> joson [sano [Kas vain, oletpa fiksu!]]
> josei [sano [Tämä oli kompa, ei Ruotsissa ole paavia.]]
> valmis

XXX TODO


Pikalinkit:


kommentoi (viimeksi muutettu 20.04.2014 13:01)