Számok és szövegek

Image
Ebben a munkában szükségünk volt a GeoGebra néhány Unicode parancsára. Ott azt ígértük, hogy erről egy külön munkában adunk egy - példákkal alátámasztott - összefoglalót. Vannak olyan számítógép algebrai rendszerek - un. CAS: Computer Algebra System programok- (a magyar rövidítéstől tekintsünk el ) amelyek gond nélkül tudnak kezelni akár 300 jegyű számokat is. De ha le kellene írnunk a GeoGebra eszköztárával egy akár 50 jegyű számot - mint hogy ott erre sor is került-, azt szövegként kellene kezelnünk, ahol a szöveg alapelemei- betűi - számjegyek lennének, mivel a GeoGebra legfeljebb 13 jegyű számokat tud kezelni biztonságosan. A számítástechnikában a karakter szó többnyire valamilyen betűt, számjegyet, írásjelet vagy bármilyen egyéb jelet jelent, amit a egy-egy számmal jelöl az adott rendszer. Ezt a kapcsolatot egy un. karaktertábla írja le, amelyet tekinthetünk a számítógép és az ember közötti kapcsolat "szótárának"., amely minden karakternek megfeleltet egy pozitív egész számot. Mielőtt továbblépnénk erősen ajánljuk olvasóinknak az Unicode címszóhoz tartozó szócikk rövid áttekintését. Már csak azért is, mert a GeoGebra ezt a karaktertáblát használja.

A GeoGebra Unicode parancsai:

A GeoGebra az alábbi négy parancsot ismeri:
  • UnicodeBetűvé() amely egy 32-nél nem kisebb egész számot alakít át karakterré. Az alsó határ azért 32, mert az ennél kisebb számok un. vezérlő -nem nyomtatható - jelek, amelyek pl. nyomtatási utasításokat vagy a karakter megjelenési formáját befolyásolják. Pl. az a=UnicodeBetűvé(A+48) parancs előállítja az A egy egyjegyű egész számnak megfelelő a számjegyet mint karaktert. Természetesen a bemenő adatnak van felső határa is, de ez valahol 64 000 felett van, így sok nyelv betű-. ill. és jelkészlete és egyéb jele is belefér. Ha csak egy karaktert szeretnénk beírni egy szövegbe, és ismerjük az unikódját, azt beírhatjuk az Alt billentyű t lenyomva beírt számmal. A szám leírásához csak a jobboldali szám-billenytyű használható. Pl. Alt+42 eredménye a szorzás jel: *.
  • BetűtUnicode() Ez a parancs a billentyűzettel előállítható vagy bármely más ódon előállított karakterhez hozzárendeli a neki megfelelő pozitív egész számot. Pl. a p=BetűtUnicode("*") parancs eredménye 42.
  • UnicodeSzöveggé() A parancs bemenő adata egy olyan sorozat, amelynek az elemei megfelelő egész számok. Eredménye egy ugyanennyi karakterből álló szöveg. Pl. ha s=Sorozat(i,i,32,127), akkor a A1=UnicodeSzöveggé(s) parancs eredményeként megkapjuk a billentyűzet legtöbb karakterét, kivéve a magyar ékezetes betűkét: !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ (Ezt a karaktersorozatot a táblázatkezelőből másoltuk ide.)
  • SzövegetUnicode() Ha kíváncsiak vagyunk, hogy hol helyezkednek az a kódtáblában a magyar ékezetes betűk, írjuk a GeoGebra parancssorába a SzövegetUnicode("ÁÉÍÓÖŐÚÜŰáéíóöőúüű") parancsot.

Műveletek szövegekkel

Ha egy szöveget, vagy karaktert a parancssorban adunk meg, akkor a " jelet kell írnunk az elejére és a végére. Egyszerűen összeilleszthető két szöveg, vagy egy szöveg és egy betű a + jellel. Például ha p="abcd" , q="efgh" akkor p+q ="abcdefgh" Kísérletképpen tegyünk p és q közé előbb egy nyomtatható, majd nem nyomtatható jelet. pxq=p+UnicodeBetűvé(45)+q eredménye: "abcd-efgh". Nem áruljuk el, hogy mi történik, ha 45 helyett 15-öt ír valaki. Csak javasolhatjuk, hogy többet ilyet ne tegyenek. A 32 unikódhoz a szóköz karakter tartozik, ami azonban fele olyan széles, mint pl. egy számjegy, így ha pl. az abcd0123456789efgh szöveg akkor lesz egyenlő hosszú az abcd......................efgh szöveggel, ha 20 szóközt (vagy pontot) írunk p és q közé. Az itt említett anyag készítésekor meg kellett adni egy adott hosszúságú üres - nem látható - szöveget, amelynek a hossza a képernyőn ugyanakkora, mint ha számjegyekből állna. Ha valaha GeoGebra anyag írása közben hasonló problémával találkoznak olvasóink, talán hasznát veszik annak, hogy ez a "műhelytitok" már nem titok. Bár ezzel csak nagyon röviden pillantottunk be a szövegszerkesztés rejtelmeibe. Például felvethethető, hogy ezeket az ismereteket tudnánk-e hasznosítani arra, hogy a Collatz sejtés appletjét terjesszük ki akár száz jegyű számok kezelésére is.