• Print

Author Topic: Native language test program for kids  (Read 93 times)

Petr

  • Hero Member
  • *****
  • Posts: 656
Native language test program for kids
« on: April 12, 2018, 12:50:10 pm »
Very easy test program (for CZ language, but it can inspire you) for testing your kids from correct write. In my native language are big difference if is word writed with i or with y. Or this character is used with comma. For example the word BYT. Is not byte as in english, but it is HOME. But if i write BIT, it is not BITE as in english but it is HIT or BATTER. This is tested in school, if kids writing all words correct. This program create test, program write not  this characters, kids after is program output printed, inserting it. Easy but very effective. Text is inserted to program using _CLIPBOARD$.

Code: [Select]
'CLIPPY, labels names ARE CORRECT :-D
_TITLE "Czech language correct writing test for kids"
A$ = _CLIPBOARD$
path$ = ENVIRON$("SYSTEMROOT") + "\fonts\TIMES.ttf"
_FONT _LOADFONT(path$, 30, "MONOSPACE")

RESTORE Microsoft_pc_cp1250
FOR ASCIIcode = 128 TO 255
    READ Microsoft_pc_cp1250
    _MAPUNICODE Microsoft_pc_cp1250 TO ASCIIcode
NEXT

Microsoft_pc_cp1250:
'Microsoft_windows_cp1250
DATA 8364,0,8218,0,8222,8230,8224,8225,0,8240,352,8249,346,356,381,377
DATA 0,8216,8217,8220,8221,8226,8211,8212,0,8482,353,8250,347,357,382,378
DATA 160,711,728,321,164,260,166,167,168,169,350,171,172,173,174,379
DATA 176,177,731,322,180,181,182,183,184,261,351,187,317,733,318,380
DATA 340,193,194,258,196,313,262,199,268,201,280,203,282,205,206,270
DATA 272,323,327,211,212,336,214,215,344,366,218,368,220,221,354,223
DATA 341,225,226,259,228,314,263,231,269,233,281,235,283,237,238,271
DATA 273,324,328,243,244,337,246,247,345,367,250,369,252,253,355,729

_CONTROLCHR OFF

CLS , 15
COLOR 0, 15
FOR ro = 1 TO LEN(_CLIPBOARD$)
    char$ = MID$(_CLIPBOARD$, ro, 1)
    char = ASC(char$)
    7 IF block > 70 AND char = 32 THEN PRINT: PRINT: block = 0: _CONTINUE
    SELECT CASE char
        CASE 13: PRINT: PRINT: block = 0
        CASE 105, 121, 237, 253: PRINT "_";: block = block + 1: _CONTINUE 'i, í, y, ý

        CASE 31 TO 255: PRINT char$;: block = block + 1
    END SELECT
    REM SLEEP
NEXT
'_PRINTIMAGE 0 'print output screen to printer (white background and black print is used therefore)
Coding is relax.

  • Print