3.4 Bonus: Racket Turtle - jatko
Racket Turtle -kirjaston avulla voi piirtää hienoja kuvioita, kun osaa käyttää tavallisia funktioita, listoja sekä rekursiivisia funktioita tai Higher Order - funktioita. Ennen näitä tehtäviä on hyvä tutustua Racket Turtle -alkeet tehtäviin sekä Racket Turtle - esimerkkeihin Koodarin käsikirjassa.
(require teachpacks/racket-turtle)
WeScheme:ssä ei tarvita paketin asennusta. Huomaa myös, että WeSchemessä kirjastolla on eri nimi.
3.4.1 Turtle - Koch:in käyrät
Harjoittele listojen ja funktioiden käyttämistä piirtämällä kuvan mukaiset Koch:in käyrät. Mieti ensin mikä on toistuva jakso ja lähde ideoimaan ohjelmaa sen kautta. Symmetrisen kuvion kanssa kannattanee kokeilla myös peilausta.
Tässä harjoituksessa saatat tarvita seuraavia Racket-kielen ja Racket Turtle -kirjaston funktioita:
|
|
| ||||
|
|
|
3.4.2 Turtle - spiraalit
Harjoittele listoja, rekursiivisia funktioita tai Higher Order - funktioita piirtämällä Turtlella erilaisia spiraalikuvioita.
Turtle - spiraalikuviot
Ohjaa Racket Turtle tekemään kuvan mukainen spiraali käyttämällä rekursiivista funktiota tai Higher Order - funktioita. | |
Muokkaa edellistä koodiasi hieman, että saat aikaan tämän näköisen kuvion. | |
Tee rekursiivisen funktion tai Higher Order - funktion avulla lista, joka sisältää kooltaan kasvavia satunnaisen värisiä tähtiä. | |
Käytä edellä tekemäsi tähtilistaa sekä kakkoskohdan vinon spiraalin koodia ja tee niiden avulla kuvan mukainen tähtispiraali. | |
Ohjaa Turtle kulkemaan satunnaiseen suuntaan satunnaisen pituisia matkoja. |
Tässä harjoituksessa saatat tarvita seuraavia Racket-kielen, 2htdp/image-kirjaston ja Racket Turtle -kirjaston funktioita:
|
|
|
|
| ||||||
|
|
|
|
|