Jos on aiemmin tutustunut vain Wordin kaavaeditoriin, OpenOfficen vastaava saattaa tuntua äkkiseltään varsin takaperoiselta. Toisaalta kun siihen tottuu, se onkin oikein kätevä työkalu, varsinkin kun se mahdollistaa kaavojen kirjoittamisen ihan tekstimuotoisena määttelynä. Esimerkiksi seuraava yksinkertainen neliöjuurilauseke on mahdollista kirjoittaa ihan ilman yhtään hiirellä näpyttelemistäkirjoittamalla vain alla olevaan kaavaikkunaan siellä nyt lukeva teksti:
Muutenkin sen seuraaminen, mitä tässä ruudussa lukee, on hyvin tarpeellista. Kaikkea ei voi hoitaa hiirellä ja on osattava itse hoitaa kursori oikeaan kohtaan, jotta kaava näkyisi oikein.
Kaavan lisääminen aloitetaan Insert - Object - Formula... -valinnalla:
Tämän jälkeen ruutu jakautuu kahtia ja vierelle tulee kaavaeditorin valikko:
Nyt voidaan kaavojen kirjoittaminen aloittaa.
Esimerkkinä toteutetaan toisen asteen yhtälön ratkaisukaava:
Kirjoitus alkaa yksinkertaisesti kirjoittamalla koodiosaan x=. Sen jälkeen valitaan jakoviiva (ks. kuva) ja koodiosassa lukee nyt jotakin tällaista:
Siitä, mitä koodiosaan kirjoittui, voi päätellä, miten operaatio jatkuu. over-sanan edellä oleva osa on mustattu (aktivoitu) ja sen kohdalle (oikeastaan päälle) jatketaan. Koska yläpuolella on useampia osia, tarvitaan ryhmittelyä varten aaltosulut {}, joiden sisään koko osoittaja tullaan kirjoittamaan. Ryhmäsulut päästään valitsemaan kuvassa näkyvästä paikasta, jos tätä ei haluta itse kirjoittaa:
Nämä <?>-merkinnät ovat siis paikkamerkintöjä, jotka kertovat, minne pitää kirjoittaa ja mitä! Valmiissa kaavassa ei saa olla jäljellä yhtään näistä!
Nyt jatketaan kirjoittamalla -b ja valitsemalla merkki, jossa on plus ja miinus päällekkäin (löytyy ihan ensimmäisestä valikosta), jonka perään sitten aloitamme neliöjuurilausekkeen f(x):n takaa:
Ja kuten jo edellä osoittajan tapauksessa, neliöjuurimerkin alla on kaksi operandia, joten tarvitaan ryhmittelyä varten aaltosulut ja sen jälkeen funktiovalinnan alta potenssiinkorotus, jonka jälkeen kirjoitetaan loput (-4ac) oikeaan paikkaan:
Näin se siis meni:
Vielä on jäljellä nimittäjän käsittely. Over-sanan perässä on vielä yksi paikkamerkki käsittelemättä. Mennään sinne, poistetaan se ja kirjoitetaan tilalle 2a. Jos nimittäjään tulisi muita operandeja, tarvittaisiin luonnollisesti ryhmäsulut ympärille.
Nyt kaava on valmis ja näyttää tältä:
Jos funktio on useampirivinen, kuten esimerkiksi seuraava:
tulee aaltosulkujen kanssa helposti ongelmia. Nimittäin valinnoista kun ei suoraan löydy kuin sellaisia vaihtoehtoja, jossa on mukana sekä alku- että loppusulku. Jälkimmäisen sulun saa kuitenkin pois, vaihtamalla viimeisen rbrace
-määrityksen tilalle none
. Edellisen kuvan kaavan tuottama koodi on siis seuraava:
f(x)=left lbrace stack{alignl x^{2} ~x>0 # alignl 0 ~~x <= 0 } right none
Stack
-määrityksellä saadaan pinottua asioita päällekkäin. Risuaitamerkki (#) on tässä rivinvaihtomerkki. Toinen vaihtoehto olisi matrix
, joka on oikeasti matriisi (eli rivillä voi olla useampikin "alkio"). Siinä kaksi risuaitamerkkiä vaihtaa riviä ja yksi taas on alkioiden välinen erotin. Matomerkit (~) taas laittavat hieman lisää väliä arvon ja ehdon väliin. alignl
taas tasaa rivin vasemmalle. Nämä kaikki saa myös graafisesta valikosta lukuuottamatta none
-määritystä.
Kokeile nyt itse. Toteuta seuraavat kaavat OpenOfficen kaavaeditorilla:
Vihje: Sigma-merkki ensin ja vasta sen jälkeen valitset rajamäärittelyt. Koodi-ikkunassa tulisi valmiin koodin kohdalla lukea tällaista:
1+2+...+n = sum from{i=1} to{n} i ={n(n+1)} over 2
Onnistutko toteuttamaan nämä?