Dr. Csernoch Mária

SPREGO – Funkcionális programozás
oktatása általános és középiskolában

377 sz9 Csernoch Mária

Absztrakt

Sprego – Spreadsheet Lego – egy olyan programozási eszköz és megközelítés, amellyel funkcionális programozást tanulhatunk, taníthatunk, valósíthatunk meg táblázatkezelői környezetekben. Jelen tanulmányban olyan unplugged Sprego-eszközök kerülnek bemutatásra, amelyekkel fejleszthető a tanulók számítógépes gondolkodása 0, algoritmikus készsége, függvény fogalma, már korai iskolás kortól kezdődően. Hasonlóan más programozási környezetekhez, a Sprego programozás lényege a koncepcióalapú problémamegoldási módszerek alkalmazása, továbbá egy gyakorlatias függvény fogalom kialakítása, amely a későbbiekben használható lesz a klasszikus programozási nyelvek tanulása során is.

Sprego koncepció

Sprego függvények

A Sprego elnevezés egy rövidítés, amely a Spreadsheet Lego kifejezésekből jött létre (50. ábra) 0, 0, 0, 0. Egyrészt utalva arra, hogy táblázatkezelői környezetben dolgozunk, másrészt hasonlóan a Legohoz, általános célú építőköveket használunk bonyolultabb problémák megoldásához is. Sprego környezetben az általános célú építőelemek a Sprego függvények, melyek a táblázatkezelő programok általános célú függvényei közül kerültek kiválasztásra. Ezen függvények egyik sajátossága, hogy n-ary függvények, melynek következtében olyan matematika ismeretek átadására nyílik lehetőség digitális környezetben, amelyek a jelenlegi tantervek többségében nem képezik részét az alapfokú matematikaoktatásnak. A függvények számítógépes környezetben betöltött szerepe, azonban, megköveteli egy, a korábbinál jóval gyakorlatiasabb függvény fogalom jelenlétét. A Sprego további előnye, hogy használatával funkcionális programozást és modellezést valósítunk 0, 0, 0, 0, amelyről már a 90-es évek elején bizonyításra került, hogy egy rendkívül hatékony kezdő programozási eszköz, szemben az imperatív nyelvekkel 0, 0, 0.

chernochp1

50. ábra. Sprego logó, amely a Spreadsheet és a Lego kifejezésekből tevődik össze

Kiindulásként egy 12 elemű Sprego függvény készletet definiálunk: Sprego1 és Sprego2, röviden Sprego12 (2. táblázat) 0, 0. A Sprego1 csoport tartalmazza azokat a függvényeket, amelyek már teljesen kezdőknek is javasolt. A Sprego2 csoport a vektorok, mátrixok és a hibák kezelésére szolgáló függvényeket foglalja össze, amelyek már magasabb szintű számítógépes gondolkodást igényelnek. A Sprego függvények készlete természetesen bővíthető, amennyiben a problémák úgy kívánják. A bővítés során azonban minden esetben szem előtt kell tartani, hogy általános célú függvényeket használjunk. Javaslataink szerint a Sprego3 csoport az alábbi függvényeket tartalmazhatja: sor(), oszlop(), kicsi(), nagy(), és(), vagy(), nem(), kerekítés(), eltolás(), vél(), int().

2. táblázat Sprego12 – Sprego tucat függvények

Sprego12 – Sprego tucat

Sprego1

Sprego2

bal()

index()

jobb()

hol.van()

len()

hibás()

szöveg.keres()

 

szum()

 

átlag()

 

min()

 

max()

 

ha()

 

Összetett függvények

A Sprego függvények jellegéből és számából következően, bonyolultabb problémák megoldásához összetett függvények létrehozására vagy segédcellák használatára van szükség. Annak érdekében, hogy melyik megoldást használjuk, mindig az oktatási, a nevelési célok, valamint a probléma jellegét célszerű figyelembe venni.

Az összetett függvények megvalósításához a „matrjoska-baba-elvet” használjuk, amely remekül szemlélteti a függvények egymásba ágyazásának módját és a zárójelek használatát 0, 0, 0. Az összetett függvények használatához kifejlesztett eszközeinket az Összetett függvények fejezetben mutatjuk be. Fontosnak tartjuk megjegyezni, hogy az összetett függvények építésével egy újabb olyan matematikai fogalom kerül használatba, amely a jelenlegi matematika tantervekben csak említés szintjén jelenik meg a magasabb szintű tananyagokban.

Autentikus táblázatok

A Sprego programozás következő sajátossága az autentikus táblázatok használata és ezek konvertálása. Az autentikus táblázatok számtalan előnnyel rendelkeznek, szemben a gépelt és kitalált táblázatokkal (51. ábra, 52. ábra). A táblázatok tartalma felkeltheti a tanulók érdeklődését a választott téma iránt, ennek következtében az adatelemzés és kiértékelés egy olyan foglalatosság, amely eredménye ösztönözheti a gyerekeket. Az autentikus táblázatok további előnye, hogy tartalma kapcsolódik más tantárgyakhoz, témakörökhöz, kérdésekhez, problémákhoz, így ezek lényegesen meghaladják a hamis vagy valótlan adatokat tartalmazó táblázatok oktatásban és nevelésben történő felhasználhatóságát. Még további előnye ezen táblázatok alkalmazásának, hogy a tanárok digitális kompetenciájának fejlődésével, a táblázatok idővel bekerülhetnek más tantárgyak óráira is, amely keretek között valódi adatfeldolgozás történhet. A gyakorlataink során felhasznált autentikus táblázatokból egy válogatást külön fejezetben találhatnak.

csm0

51. ábra. Példa értelmetlen, unalmas tankönyvi feladatokra

csm00

52. ábra. Példa értelmetlen, unalmas tankönyvi feladatokra

Az autentikus táblázatok leggazdagabb forrása az internet. Az internetről letöltött valós tartalmak azonban a táblázatok mellett számos olyan adatot is tartalmaznak, amelyek nem kerülnek feldolgozásra. A táblázatok megfelelő előkészítése egy konvertálási folyamat, amely ismételten egy algoritmus, tehát ezen táblázatok létrehozásával is kiválóan fejleszthető a tanulók számítógépes gondolkodása 0. A tanulók képzettségétől, az oktatási és nevelési céloktól függően készíthetjük elő a feldolgozásra szánt táblázatokat vagy bízhatjuk a tanulókra a konvertálási folyamatot is 0. A nagyméretű autentikus táblázatok használata azonban nem egyszerű egy korlátozott, viszonylag kisméretű képernyőn. Annak érdekében, hogy az adatfeldolgozás minél gördülékenyebb legyen érdemes a megjelenítéshez köthetően két beállítást elvégezni: a felső sorok és a bal oldali oszlopok rögzítése, valamint sorok elrejtése. A rögzített oszlopok és sorok számát, valamint az elrejtett, illetve a képernyőn megjelenített sorokat mindig a táblázat szerkezetének, valamint az éppen aktuális probléma igényeinek megfelelően érdemes meghatározni.

A leggyakoribb az a rögzítés, amikor az első sort, amely a mezőneveket, és az első oszlopot, amely valami azonosítót tartalmaz, mindig a képernyőn hagyjuk. Ebben az esetben a rögzítést a B2 cellában végezzük el (Nézet→Panelek rögzítése→Ablaktábla rögzítése).

Azt, hogy mely sorokat érdemes elrejteni, megjeleníteni mindig a feladat alapján tudjuk eldönteni. Ha nincs semmiféle különleges megkötése a feladatnak, akkor leginkább az első és az utolsó néhány sort jelenítjük meg, míg a köztes sorok rejtve maradnak. A 53. ábra a Föld országai táblázat alapján[3] két olyan feladatot és a hozzá tartozó sorokat mutatja, amelyeknél nem elég az első és utolsó sorok megjelenítése.

Feladat: Első főváros nevek kiíratása.

Feladat: Országnevek kiíratása eredeti sorrendben.

csm2 csm3

53. ábra. A Föld országai táblázat alapján megfogalmazott két feladat és a hozzájuk tartozó rekordok megjelenítése


További szempont lehet a sorok elrejtésénél, hogy az elrejtések kézi elvégzése elvezetheti a tanulókat az algoritmus egyes lépéseinek megfogalmazásához. A 54. ábra mintája egy kiválasztott földrész rekordjait mutatja.

csm4

54. ábra. Oceania országainak kiválogatása a többi földrész országainak elrejtésével – Föld országai táblázat

Tömbképletek

A Sprego egy további eszköze a tömbképletek használata 0, 0, 0, 0, 0, 0. Kutatások egyértelműen mutatják, hogy a táblázatkezelői dokumentumok egyik leggyakoribb hibaforrása a képletek másolása 0, 0–0. Ennek kiküszöbölésére a tömbképleteket használjuk. A tömbképletek előnye a hagyományos másolással szemben, hogy egyetlen képletet hozunk létre, amely teljes tömböt/tömböket fogad bemeneti értékként. Ezt a megoldást használva nincs szükség másolásra, így a képletek lényegesen biztonságosabbak, mivel a tömb definiálása után az újabb kiértékeléseknél automatikusan megtörténik a tömbelemek kiszámolása és kiíratása (többelemű tömbképletek). Abban az esetben, ha a számolás részeredményeit nem kívánjuk a táblázatban megjeleníteni, lehetőségünk van egyelemű tömbképletek létrehozására is. A műveletek végrehajtása megtörténik a tömb valamennyi elemén, de csak egyetlen érték kerül kiíratásra. A kiíratott elem vagy a tömb első elemének az értéke vagy az egyetlen eredmény, amelyet a műveletsor végrehajtása után kapunk meg. A tömbképletekkel végrehajtása nem más, mint egy ciklus végrehajtása a tömb valamennyi elemén.

Sprego problémamegoldás

Sprego környezetben szakítunk az alkalmazói környezetekben elfogadott és alkalmazott alacsony szintű problémamegoldási megközelítésekkel. Ennek megfelelően, nem használjuk az „addig próbálkozunk és kattintgatunk, amíg ki nem jön valami” megközelítést, az „elég ha használni tudom” szlogennel kiegészítve, mely megközelítésnek a legjelesebb képviselője MacElek.

csm5

55. ábra. „Mindenhez értek”, „addig próbálkozok, amíg ki nem jön valami”
végfelhasználói megközelítés leginkább a MacElek-féle szakértelemhez hasonlít[4]

A MacElek megközelítéssel ellentétben, a Spregoban elemezzük a problémát, megkeressük, hogy a rendelkezésre álló kiindulási adatokból hogyan juthatunk el a kívánt végeredményhez, ezt követően megépítjük az algoritmust, az algoritmus alapján kódoljuk a feladatot, majd a diszkusszióval zárunk. Természetesen, ha a diszkusszió eredménye azt mutatja, hogy a problémát nem sikerült megoldani, akkor visszacsatolás következik az előbb felsorolt szintek valamelyikére.

Sprego minta

Témaválasztás

Az alábbiakban bemutatjuk, hogy a Sprego koncepció hogyan használható adatfeldolgozáshoz, problémamegoldáshoz. Figyelembe véve, hogy az általános iskolás gyerekek matematikai ismeretei még nem feltétlenül olyan magas szintűek, hogy ezen ismeretekre a problémamegoldások során feltétlenül számíthatunk, ezért a Sprego környezetben nem matematika feladatokat megoldásával kezdünk, hanem szövegkezeléssel.

Kezdőknél, gyerekeknél az első órákon a 56. ábra adatait felhasználva oldunk meg feladatokat. A táblázat, a tanulók körében rendkívül népszerű, IMDB szavazók által választott 250 legnépszerűbb film adatait tartalmazza. Jelen tanulmányban a táblázat C2:C251 vektorának adatelemzését és feldolgozását mutatjuk be.

csm6

56. ábra. IMDB top 250 filmek, elrejtett sorokkal

IMDB top 250[5] unplugged

Már kicsi gyerekek is könnyen felismerik, hogy az IMDB táblázat C oszlopa két adatot is tartalmaz és ezek az adatok nem is megegyező típusúak. Tehát kezdő feladatként megoldhatjuk a filmcímek és az évszámok szétválasztását, és ezek kiíratását önálló oszlopokba. Nagyban segíti a feladat és a probléma megértését, ha a gyerekek kezébe adjuk a kinyomtatott táblázatot és ollóval szétvágják azt a címek és az évszám között (57. ábra, 58. ábra). Ezzel egyértelművé válik, hogy melyik szövegrész helyezkedik el az eredeti sztring bal és jobb oldalán, valamint segíthet a szabályok és a tulajdonságok felismerésében.

 csm7  csm8  csm9

57. ábra. Ollóval szétvágott IMDB táblázat

csm10

58. ábra. Gyerekek szétvágják a kézzel írt IMDB táblázatot

A tényleges adatfeldolgozás első lépése az, hogy kigyűjtjük az évszámok és filmcímek tulajdonságait, amelyeket a 3. táblázat mutat be. Második lépésként megépítjük az egyes problémákhoz az algoritmust (4. táblázat).

3. táblázat. Az IMDB top 250 filmek title oszlopában található két adat tulajdonságai

évek tulajdonságai

címek tulajdonságai

számok

szövegek

4 számjegyű, xxxx alakú

változó hosszúságú, de kiszámolható

( )

cím˽(xxxx)
cím hossza = teljes szöveg hossza − 7

jobb oldalon helyezkedik el

bal oldalon helyezkedik el

4. táblázat Az évek kiíratásának algoritmusa és a visszaadott értékek, valamint azok adattípusa

évek kiíratásának algoritmusa

output, adattípus

jobbról kiíratunk 5 karaktert

xxxx)

 

adattípus: szöveg

balról kiíratunk 4 karaktert

xxxx

 

adattípus: szöveg

szöveg konvertálása számmá

xxxx

 

adattípus: szám

Sprego unplugged eszközök

Összetett függvények – Sprego babák

Az összetett függvények kezeléséhez szükséges készségek fejlesztéséhez általános és középiskolában jelenleg nem állnak rendelkezésünkre módszerek. Napjainkban még csak sejteni lehet, hogy a Sprego egy eszköz lehet az összetett függvények bevezetéséhez már kisgyermekkorban is. Ahhoz, hogy a gyerekek megtapasztalják, hogy ezek a függvények hogyan adnak vissza egyetlen értéket és ez az egyetlen érték hogyan lehet egy újabb függvény bemeneti értéke, argumentuma, kiválóan szemléltethető a matrjoska babákkal (59. ábra). A valódi tapasztaláshoz azonban, az, hogy a babák hogyan építhetők egymásba mindenképpen a gyerekek kezébe kell adni egy készletnyi babát.

Ezeknek a babáknak a beszerzése azonban nem egyszerű. Alternatív megoldást jelenthet az egymásba építhető hordók megvásárlása (60. ábra), de tapasztalataink azt mutatják, hogy napjainkban nem egyszerű a hordók beszerzése sem. Tovább gondolkozva, egy olyan megoldást találtunk, amely megkönnyítheti a babák előállításának folyamatát. 3D nyomtatót használva viszonylag rövid idő alatt nagy babakészletet tudunk előállítani (60. ábra). További költségtakarékos megoldás lehet, ha nem műanyag és fa, hanem papíralapú segédeszközökben gondolkozunk. Erre egy lehetséges megoldás az origami. Olyan eszközöket hajtogatunk, amelyekkel tudjuk szemléltetni a babák és a hordók alját és tetejét, összecsukhatóak és szétszedhetőek. Kutatásaink során azt tapasztaltuk, hogy a hajók kiválóan megfelelnek az elvárásainknak. Egyszerűen meghajtogathatóak, lehet rájuk írni és olcsó (60. ábra).

csm11

59. ábra. Saját matrjoska baba készletünk három különböző színű verziója, amelyeket a Sprego bemutató programban használunk avatárként

 csm12  csm13  csm14

60. ábra. 3D nyomtatóval készült matrjoska babák, egymásba építhető hordók és origami hajók az összetett függvények szemléltetéséhez

Tanári, táblai eszközök fejlesztése volt a további megoldandó feladat. Egyrészt nagyobb méretű eszközökre volt szükség, másrészt próbáltunk olyan eszközöket találni, amelyek a táblára is elhelyezhetőek. Jelenleg két megoldást találtunk, de hasonlóan a tanulói eszközökhöz, keressük a további lehetőségeket. Tanári eszközként szolgálhatnak a nagyméretű origami hajók. Beszerzésük, hajtogatásuk egyszerű és mágnessel elhelyezhetőek a táblán. Egy másik lehetséges táblai eszköz a 3D nyomtatott baba sorozat, amelyekre mágnest ragasztottunk (61. ábra).

csm15

61. ábra. Táblára helyezhető matrjoska-baba-körvonalak, összetett függvények egymásba ágyazásának szemléltetéséhez

A saját készítésű eszközök további előnye, hogy a tanulói és tanári eszközök színkombinációja megegyezik. Lényegesen egyszerűbb a színekkel utalni a soron következő objektumra – babára, hordóra, hajóra –, mint a sorszámokkal. (Például: a gyerekek sokkal könnyebben megtalálják a zöld babát, mint a sorban a harmadik babát.) A hordók óriási hátránya, hogy nem feltétlenül sikerül azonos színsorozatot megvásárolni a szükséges mennyiségben.

Kérdés volt, hogy hogyan tudjuk kicsi gyerekeknek elmagyarázni, hogy a tömbképletek egész vektort fogadnak be, nemcsak egyetlen egy értéket. Az egyik lehetséges megoldás, hogy kinyomtatjuk a vektort kis méretben, a gyerekek papírgalacsint csinálnak a vektorból és ezt bele teszik a legkisebb babába. Egy másik lehetséges megoldás, hogy felírjuk egy papírdarabkára a vektort és ezt tesszük a babába. A táblán is lehet használni a nyomtatott vektort, de egy lehetséges megoldás az is, ha felírjuk a vektor nevét a táblára, majd a vektor köré helyezzük el a legkisebb babát és bezárjuk azt (61. ábra, 66. ábra). A babák bezárása egy rendkívül fontos lépés a függvény fogalmának megértésében, mert ezzel tudjuk szemléltetni, hogy történjék bármi is a függvény belsejében, a visszaadott érték egyetlen objektum.

A kézzel fogható további eszközeink a ragasztószalagok (62. ábra, 64. ábra, 65. ábra). A szalagokra fel tudjuk írni az algoritmus és kódolás egyes lépéseit, majd ezeket a szalagokat felragasztjuk a becsukott babákra.

 csm16  csm17

62. ábra. Az évek kivágásának első lépése felragasztva a becsukott babára, hordóra

Az első függvény hívásakor kapott visszaadott érték lesz a második függvény egyik bemeneti értéke. A következő függvény tehát, teljes egészében magába foglalja az előző függvényt, annak visszaadott értékét (63. ábra).

 csm18  csm19

63. ábra. Az évek kivágásának első outputja elhelyezve a második babába


A babák egymásba ágyazását addig végezzük, amíg el nem jutunk az algoritmus alapján a kívánt végeredményhez.

 csm20  csm21

64. ábra. Az évek kiíratásának második lépése

 csm23  csm24

65. ábra. Az évek kiíratásának harmadik lépése


Azokkal a gyerekekkel, akik nem tudnak biztonságosan gépelni az algoritmus megépítése után meg is lehet állni, nem feltétlenül kell a kódolást minden tanulói gépen elvégezni. A tanári gépen meg lehet mutatni a kódolás menetét és az outputokat.

 csm25  csm26

66. ábra. Hordók tantermi használata – rendeltetésszerű (jobb) és kevésbé rendeltetésszerű használati módok (bal)


Sprego feladatok

Korábban már említésre került, hogy biztonságosabb dokumentumok létrehozása érdekében Spregoban tömbképletekkel dolgozunk. A tömbképletek létrehozásának és módosításának menetét a 67. ábra mutatjuk be az év kiíratásának algoritmusát követve.

Évek kiíratása

Első képlet létrehozása:

  • Első lépésként kijelöljük azt a cellát, amelyben létrehozzuk a képletet. Ez a cella az ábrán az F2.
  • Ezt követően definiáljuk a tömböt, ami táblázatkezelői környezetben nem más, mint a tartomány kijelölése: E2:E251 vektor. A kijelölést követően a táblázatkezelő színekkel jelzi, hogy melyik cellába kerül a képlet – fehér – és a kijelölt tartományt – világos kék.
  • Begépeljük a képletet, amely magába foglalja a filmek teljes tartományát – C2:C251–, ezzel biztosítva, hogy az egy képlet elvégzi a számításokat a vektor valamennyi elemén.
  • A képlet fordítását és kiértékelését a Ctrl + Shift + Enter billentyűkombinációval indítjuk el (Windows operációs rendszerben). A táblázatkezelő egy kapcsos zárójelpárral jelzi a tömbképletet, ami megjelenik a képlet körül minden egyes alkalommal, amikor megnyomjuk a billentyűkombinációt.
  • A kiértékelés után megszűntethetjük a kijelölést, mivel innentől kezdve a képlet bármilyen módosítása maga után vonja a tartomány valamennyi elemének frissítését.

Képlet módosítása

  • Az algoritmus második lépését az első képlet módosításával végezzük el.
  • Visszalépünk a képlet forráskódjába (F2 funkció billentyű vagy kattintás a forráskódba – szerkesztőléc – vagy dupla kattintás a képlet cellájába).
  • Begépeljük a módosításokat.
  • Ctrl + Shift + Enter billentyűkombinációval el indítjuk a módosított képlet fordítását és kiértékelését.
  • Az algoritmus harmadik lépését a második képlet módosításával végezzük el.

Évek kódolása:

  • {=jobb(c2:c251;5)}
  • {=bal(jobb(c2:c251;5);4)}
  • {=bal(jobb(c2:c251;5);4)*1}

csm28

67. ábra. Az évek kivágásának kódolása tömbképletekkel

Az automatikus típusfelismerés az adatok megfelelő igazításával az ilyen típusú feladatoknál nagyon sokat segít kicsi gyerekeknél annak eldöntésében, hogy milyen típusú a visszaadott érték. A sztringeket balra, míg a számokat jobbra igazítva íratja ki a táblázatkezelő program. Az évek kiíratásánál a második lépés után még szöveg típusú outputot kapunk vissza a bal() függvényből, de a konvertálás után, amit a szorzással végzünk már szám típusú az output. A váltást nagyon jól szemlélteti az adatok igazításában bekövetkezett változás.

Az eddigiekben a babák összeépítésénél és a kódolásnál alulról felfelé haladva építkeztünk. Elindultunk a legbelső elemmel, lépéssel, majd építkeztünk kifelé. A babák szétszedésével fordítva járjuk be a folyamatot, felülről lefelé építkezünk.

A babák szétszedése az utolsó lépés. A babákról le kell fejteni a ragasztókat és ezeket beragasztjuk a füzetbe, ügyelve arra, hogy lépések megfelelő sorrendben kerüljenek be. Ezzel az eljárással átismételjük a megoldást, a füzetben is nyoma marad, újabb írogatás nélkül és végezetül átnézzük a folyamatot a top-down technikával (68. ábra).

csm29

68. ábra. A babákról lefejtett algoritmus lépései, beragasztva a füzetbe

Címek kiíratása

5. táblázat. A címek kiíratásának algoritmusa és a visszaadott értékek, valamint azok adattípusa

címek kiíratásának algoritmusa

output, adattípus

kiszámoljuk az eredeti szövegek hosszát

egész szám

 

adattípus: szám

kiszámoljuk a filmcímek hosszát

egész szám

 

adattípus: szám

balról kiíratjuk a filmcímeket

cím

 

adattípus: szöveg

A babák megfelelő címkézésével és egymásba helyezésével újra megépíthetjük az egész folyamatot a bottom-up technikával és a kódolást is ugyanígy végezzük.

Címek kódolása:

  • {=hossz(c2:c251)}
  • {=hossz(c2:c251)-7}
  • {=bal(c2:c251;hossz(c2:c251)-7)}

Autentikus táblázatok

A Sprego további sajátossága az autentikus táblázatok használata. Az alábbiakban bemutatunk néhány olyan táblázatot, amelyek tartalma közel áll az általános és középiskolás tanulókhoz és a tartalomból fakadóan, az adatfeldolgozás és információszerzés felkelti az érdeklődésüket. Ez mindenképpen egy olyan motivációs eszköz, amely növelheti a módszer hatékonyságát, szemben az unalmas, értelmetlenül rövid, kitalált és gépeltetett táblázatokkal.

A feladatokkal együtt bemutatott IMDB top movies táblázat (56. ábra) rendkívül népszerű, a gyerekek kíváncsian keresgélnek benne, érdekli őket, hogy a kedvenc filmjeik szerepelnek-e a listán és milyen helyezéssel.

Népszerűek a földrajzhoz kapcsolódó táblázatok: a Föld országai (53. ábra), Magyarország megyéi (69. ábra), az USA államai (70. ábra), a világ legmagasabb épületei (71. ábra, 72. ábra), világörökség helyszínek (73. ábra) stb.

csm30

69. ábra. Magyarország megyéi

csm31

70. ábra. USA államai

csm32

71. ábra. A világ legmagasabb épületei

csm33

72. ábra. A világ legmagasabb épületei

csm34

73. ábra. Világörökség helyszínek

A gyerekek szeretik az aktuális eseményekhez kötődő táblázatokat, melyek között kiemelt helyen szerepelnek a sport táblázatok – FIFA World Cup (74. ábra), ATP (75. ábra) – és az online játék boardok (76. ábra, 77. ábra). Nem maradhatnak ki az evés, az ivás és kalóriatáblázatok sem (78. ábra, 80. ábra). Az étkezéssel kapcsolatos táblázatok különösen hálásak, mivel ezek alkalmazásával remek számolótáblákat készíthetünk a táblázatkezelő objektumait felhasználva.

csm35

74. ábra. FIFA World Cup

csm36

75. ábra. ATP 2014

csm37

76. ábra. LOL Board

csm38

77. ábra. Super Mario Board

csm39

78. ábra. Tableau des calories

csm40

79. ábra. Tableau des calories weblap táblázata alapján készített kalóriaszámláló alkalmazás

csm41

80. ábra. Dolce Pizza

csm42

Összegzés

A Sprego megközelítés kapcsán olyan unplugged eszközöket mutatunk be, amelyek segítik a kezdő programozó általános és középiskolás tanulókat a függvények alkalmazásában és egy olyan új típusú gyakorlatias függvény fogalom kialakításában, amely a programozáshoz elengedhetetlenül szükséges. A megközelítés kiemelten foglalkozik az n-ary függvényekkel, amelyek a táblázatkezelő programok és a programozási nyelvek egyik sajátossága, másrészt, az összetett függvények kezelésével. Sprego további sajátossága a tömbképletek használata, amely módszerrel már nagyon korán és egyszerűen bevezethető a tömb fogalma, annak definiálása, elemeinek feltöltése, ezek kiíratása.

Sprego egy olyan funkcionális programozási nyelv táblázatkezelői környezetben, amely hasonlóan a klasszikus programozási eszközökhöz, koncepció alapú programozást valósít meg, a valós világból származó, autentikus táblázatokon történő adatfeldolgozással. Az autentikus táblázatok előnye, hogy egyrészt csökkentik a tanulás során a gépelési terheket, hiteles adatokat tartalmaznak, amely tartalmak felkelthetik a gyerekek érdeklődését és köthetőek más tantárgyakhoz is.

A tanulmányban bemutatott eszközök egy gyakorlatias megközelítése a függvényekkel való programozásnak, amely már korai kisiskolás kortól használható, és a gyerekek élvezik az algoritmizálást ezen eszközök használatával.