Program matika
Program matika slúži na precvičenie jednoduchých počtových úkonov - sčítanie, odčítanie, násobenie malých čísiel - zhruba v rozsahu preberanom v 2.ročníku základných škôl.
Program je možné stiahnuť tu. Program sa neinštaluje, pre svoju činnosť nepotrebuje žiadne iné súbory a ani nikam nič neukladá. Jednoducho ho umiestnite na ľubovoľné miesto v počítači (napr. na pracovnú plochu), a spustite ho (napr. poklikaním).
Program je veľmi jednoduchá konzolová ("znaková") aplikácia, t.j. si otvorí "čierne" "DOS" okno. Za každou otázkou je potrebné zadať klávesnicou odpoveď a stlačiť ENTER. Stlačením ENTERu bez zadania odpovede sa program ukončí. Toto archaické užívateľské rozhranie je dané jednoduchosťou programu, avšak podľa môjho názoru nie je na škodu: deti v tomto veku už nemajú žiadne problémy s grafickými programami ovládanými myšou, a tak klasické textové rozhranie predstavuje pre mnohých z nich vlastne zvyšovanie počítačovej gramotnosti.
Je vhodné, aby aspoň počas prvých niekoľko príkladov bol prítomný aj rodič. Jednak kvôli riešeniu potiaží s ovládaním klávesnicou (napr. zadávanie znakov '>' a '<' môže byť problematické - je potrebné použiť Shift, príp. ak je ako defaultná nastavená národná klávesnica, tak AltGr), jednak kvôli vysvetleniu postupu pre niektoré úlohy. Okrem "klasických" úloh typu "5+12=" sú v "talóne" aj o niečo zložitejšie úlohy: porovnania, ktoré sa vypíšu ako napr. "90 ? 13 [<>=]:"; a príklady s "neznámou", napr. "12-?=5 ?=". Pozor aj na správne zadávanie výsledku, ktorý sa porovnáva so správnym výsledkom ako reťazec; t.j. medzera pred alebo za číslom, alebo zámena číslice 0 s písmenom O znamenajú vyhodnotenie výsledku ako chybný.
Aby bolo možné prispôsobiť sa potrebám a možnostiam (časovým) jednotlivých "užívateľov" (detí aj rodičov), program je "nekonečný" (t.j. nemá žiadne obmedzenie na počet úloh ani žiadny konkrétny cieľ), a jediným hodnotením je počítanie počtu správne riešených úloh a celkový počet zadaných úloh. Je vhodné s dieťaťom vopred dohodnúť nejaký cieľ, napr. "30 úloh, a za každú chybu dve ďalšie úlohy" - samozrejme až potom, čo si dieťa program trocha "osahalo".
Ak sa Vám program páčil - alebo aj nepáčil - alebo máte nejaké pripomienky či podnety, prosím napíšte nám ich na adresu kids zavináč efton bodka sk.
Pre vývojárov
Program je napísaný v jazyku Pascal a prekladaný prekladačom FreePascal. Program využíva výhradne prvky štandardného Pascalu, takže by mal byť preložiteľný ľubovoľným štandardným prekladačom Pascalu, a keďže ide o konzolovú aplikáciu (používajúca výhradne read(ln) a write(ln)), mal by byť preložiteľný a spustiteľný na ľubovoľnej platforme pre ktorú prekladač Pascalu existuje.
Pôvodný zdrojový text je však písaný pomocou prostriedku nyweb, a z neho je samotný pascalovský zdrojový text generovaný (príkazom nyweb.exe matika.w nul). Nevyužíva sa tak veľmi samotná "literárnosť" prostriedku - komentárov je poskromne - ako skôr "code reordering", t.j. jednotlivé elementy - definícia typov, konštanty, globálne premenné, funkcie, komentár - programu sú písané "pohromade" podľa ich logickej príslušnosti, a nie v poradí danom formálnymi požiadavkami jazyka. Keďže takto písaný program nie je príliš zrozumiteľný bez predchádzajúcich skúseností s takýmto systémom práce (naviac jeho nečitateľnosť zvyšujú pomocné elementy jazyka XML, ktorý je základom nywebu), je priložený aj vygenerovaný pascalovský zdroj.
Pri písaní programu bolo myslené aj na budúce úpravy, keďže druhácke príklady nám budú na budúci rok už (dúfam) príliš jednoduché. Hlavný cyklus teda pre každú úlohu prejde týmito fázami:
- generovanie úlohy
- zobrazenie úlohy
- načítanie výsledku
- vyhodnotenie výsledku a počítanie skóre
Kľúčové je teda generovanie úloh. To je organizované ako sústava jednoúčelových procedúr, každá z nich generuje určitý typ úlohy. Momentálne sa pri každej úlohe náhodne vyberie a zavolá jedna z týcho procedúr; zámerom je mať tento proces konfigurovateľný, aby bolo možné jednak sa sústrediť na nejaký typ prípadne skupinu úloh, a aj aby bolo možné mať program vhodný pre viacero ročníkov.
Zdroje sa dajú stiahnuť tu.
Program nemá uvedenú žiadnu explicitnú licenciu, lebo jednak im ako neprávnik nerozumiem, a tiež sa mi zdajú pomerne zbytočné. matika je momentálne tak jednoduchý program, že ho nie je možné na komerčné účely využiť. Ak by to aj bolo možné, každý slušný človek v takom prípade skontaktuje autora - existuje predsa autorský zákon; a ak je neslušný a ochotný ignorovať zákony, tak mu v tom nejaká formálna licencia sotva zabráni. Samozrejme očakávam, že ak niekto program upraví, tak ma prinajmenšom skontaktuje, a najlepšie, ak tieto úpravy urobí tak, aby bolo možné program ďalej rozvíjať.