Google Classroom
GeoGebraGeoGebra Klaslokaal

Már megint a Collatz-sorozatról

A Collatz-sorozattal már több alkalommal találkozhattak olvasóink: Tikktakk Collatz után szabadon Annak oka, hogy ismét témául választottuk ezt a sorozatot az, hogy Dr. Szilassi Lajos tanár úr egy érdekes GeoGebra anyagra talált, aminek Sorin Borodi romániai kolléga a szerzője. Az érdekessége ennek a GeoGebra-appletnek az, hogy miután megadjuk a sorozat első tagját, szinte azonnal kiírja a sorozat tagjait addig, amíg először megjelenik az 1, ami ugye meg szokott történni. A szerző nagyon ügyesen, nagy szakértelemmel használta ki a GeoGebra lehetőségeit, ami tanulságos lehet azok számára, akik mélyebben meg akarnak ismerkedni a GeoGebrával. Ez indokolja azt, hogy újra elővesszük a Collatz-sorozat témáját. Szilassi tanár úrral kicsit megfésültük a programot. Lényegében csak a kapott eredmény kiíratásában tértünk el az eredeti ötlettől. Ez alapján készült az alábbi GeoGebra fájl. Javasoljuk, hogy kipróbálást abban az esetben (is), amikor az első tag 837799, mert - az 100000-nál nem nagyobb számok között - ez esetben kell a legtöbbször alkalmazni a sorozat hozzárendelési szabályát, amíg eljutunk az 1-ig. De tanulságos lehet a 27 és a 31 első tagú Colllatz-sorozat vizsgálata is.
A következőkben megmutatjuk a fenti fájlban használt eszközöket. Előrebocsátjuk, hogy a GeoGebra listakezelésében nagyon sok lehetőség rejlik. 1. f(x)= Ha(floor(x/2)-x/2≟0,x/2, 3x+1) Ez a függvény tartalmazza Collatz-sorozat képzési szabályát. (Páros x-hez a felét, páratlan x-hez a háromszorosánál eggyel nagyobb számot rendel a függvény. 2. L=IterációLista(f, n, 1000) Ez a parancs létrehozza az L listát, ami a Collatz-sorozat első 1000 tagját tartalmazza. (Feltételezhető, hogy ezek között már szerepel az 1.) 3. Egy összetett parancs következik, ami az N listát definiálja:
Image
Ezt az parancsot részleteire bontva beszéljük meg. a) Hossz:=Pozíció(1,L) Az L listában az első 1 sorszáma. A Collatz-sorozat tagjai csak az első 1 előfordulásáig érdekelnek bennünket, a többi tag elhagyható. Erre szolgál a következő parancs. b) ListaRész(L,1,Hossz) Az L lista elemei közül "elfelejti" az első 1 után következőket. Ezzel a feladat lényegi részét elvégezte a program, a következő manipulációk az output formájának megadása miatt szükségesek. c) Az Oszlop értékét a felhasználó adhatja meg. Ezzel határozhatja meg azt, hogy a sorozat tagjainak kiírása hány oszlopban történjen, biztosítva, hogy az adatok jól láthatók legyenek a rendelkezésre álló területen. d) Sor:=floor((Hossz-1) / Oszlop) A Hossz és az Oszlop ismeretében a parancs kiszámolja, hogy hány sorban fér el a megjelenítés. A továbblépés előtt szólni kell arról, hogy GeoGebra Sorozat fogalma eltér az matematikai analízis/calculus fogalmától. Rendezett elem n-est jelent. e) A Collatz-sorozat első Hossz tagját Sor darab sorba és Oszlop darab oszlopba rendezve kell megjeleníteni. Ezt oldja meg a két egymásba skatulyázott Sorozat parancs. Ez azt jelenti, hogy itt lényegében "Sorozat"-ok "Sorozat"-áról van szó.
4. Az N lista tulajdonságait megadó panelen bekattintottuk a "Legördülő listaként megjelenít" tulajdonságot. Megjegyzés: A GeoGebra szerzőként azt tünteti fel, aki elhelyezte az anyagot az oldalon. Ezért csak itt tudom jelezni, hogy ezen írás létrejöttében döntő szerepe Dr. Szilassi Lajosnak volt.

(Tarcsay Tamás)