Laskutehtävä

Laskutehtävätyökalulla voi luoda yksilöllisiä laskutehtäviä käyttämällä muuttujia, joiden paikalle sijoitetaan vaihtelevat numeroarvot tenttiä tehtäessä.
Alla pienennetty näkymä päämuokkaussivusta ja muutamia esimerkkejä:

Kysymys: | Paljonko on {a} + {b} ?
Näytettävä kuva |
Oikea ratkaisukaava: |
Virhemarginaali: | ±
Virhemarginaalin tyyppi: |
Merkitsevät arvot |

Kysymyksessä näytetään sekä kysymys että oikea ratkaisukaava {a} ja {b}. Näitä ja muita {nimi} voidaan käyttää muutujina, joihin sijoitetaan joku luku tenttiä tehdessä. Oikea vastaus lasketaan tenttiä palautettaessa käyttämällä "Oikea ratkaisukaava" -kaavaa, johon sijoitetaan käytetyt muuttujien arvot. Muuttujien arvot määrätään tai luodaan laskutehtävien muokkaussivulla.
Esimerkkikaavassa käytetään operaattoria +. Muut hyväksytyt operaattorit ovat -*/ ja %, joka tarkoittaa modulo-operaattoria. PHP-tyyliset matemaattiset funktiot ovat myös mahdollisia. Näiden joukossa on 24 yksiarvoista funktiota
abs, acos, acosh, asin, asinh, atan, atanh, ceil, cos, cosh, deg2rad, exp, expm1, floor, log, log10, log1p, rad2deg, round, sin, sinh, sprt, tan, tanh
ja kaksi kaksiarvoista funktiota
atan2, pow
sekä funktiot min ja max jotka ottavat vastaan kaksi tai useampia argumentteja. On myös mahdollista käyttää funktiota pi, johon ei tule argumentteja mutta silloinkin on muistettava käyttää sulkumerkkejä - pi'n oikea käyttö on muotoa <>pi(). Myös muiden funktioiden argumenttejen on oltava sulkujen sisällä. Esimerkiksi siis: sin({a}) + cos({b}) * 2. Funktioita voi myös upottaa toistensa sisään, esimerkiksi:cos(deg2rad({a} + 90)) jne.
Lisätietoja PHP-tyylisten funktioiden käytöstä saa PHP sivuston dokumentaatiosta
Samoin kuin numeerisissa kysymyksissä, laskutehtävissä on mahdollista antaa marginaali, jonka sisällä olevat luvut kaikki hyväksytään oikeiksi vastauksiksi. Tämä tehdään "Virhemarginaali"-kentässä. Laskutehtävissä on kolmea eri virhemarginaalityyppiä: relatiivinen, nimellinen ja geometrinen. Jos oletetaan, että oikea vastaus kysymykseen olisi 200 ja virhemarginaaliksi on asetettu 0,5, eri tyypit toimisivat näin:
Relatiivinen: Virhemarginaali lasketaan kertomalla oikea vastaus 0,5:llä, tässä tapauksessa saataisiin siis 100, ja täten oikeaksi katsottaisiin kaikki vastaukset väliltä 100 ja 300 (200 ± 100)
Tämä on hyödyllistä jos oikean vastauksen suuruus vaihtelee suuresti eri muuttujien arvoja käytettäessä.
Nimellinen: Tämä on helpoin marginaalityyppi, mutta ei kovin tehokas. Oikeiksi katsotaan siis vastaukset väliltä 199,5 ja 200,5 (200 ± 0,5).
Tätä marginaalityyppiä kannattaa käyttää jos erot eri oikeiden vastausten välillä ovat pienet.
Geometrinen: Virhemarginaalin ylin arvo lasketaan kaavalla 200 + 0,5*200 ja on siis sama kuin relatiivisessa marginaalissa. Alin arvo lasketaan kaavalla 200/(1 + 0,5). Oikeat vastaukset ovat siis välillä 133,33 ja 300.
Tämä marginaalityyppi on hyödyllinen monimutkaisiin laskutoimituksiin joissa relatiivinen marginaali 1 tai enemmän toimisi ylärajaa määriteltäessä, mutta relatiivista marginaalia ei voisi hyväksyä alarajaa määriteltäessä, sillä silloin 0 katsottaisiin aina oikeaksi vastaukseksi.
Merkitsevät arvot vaikuttaa siihen, missä muodossa oikeat vastaukset esitetään arvostelussa tai kertauksessa ja mistä kohdasta pyöristys tapahtuu. Esimerkiksi: jos arvoksi on määritelty 3, oikea vastaus 13,333 esitettäisiin muodossa 13,3, 1236 olisi muodossa 1240, 23 muodossa 23,0 jne.
Palaute- ja muu yksikkö -kentät toimivat samoin kuin numeerisissa kysymyksissä.