b'\n_START_ARTICLE_\nBASIC\n_START_PARAGRAPH_\nBASIC (nuo angl. Beginner\xe2\x80\x99s All\xc2\xa0\xe2\x80\x93 purpose Symbolic Instruction Code)\xc2\xa0\xe2\x80\x93 programavimo kalb\xc5\xb3 \xc5\xa1eima. Sukurta kaip lengvai naudojama programavimo kalba ji buvo pla\xc4\x8diai naudojama kompiuteriuose devintame XX a. de\xc5\xa1imtmetyje ir i\xc5\xa1lieka populiari iki \xc5\xa1i\xc5\xb3 dien\xc5\xb3 su daugeliu i\xc5\xa1vystyt\xc5\xb3 kalbos atmain\xc5\xb3.\n_START_SECTION_\nVartotojo s\xc4\x85saja\n_START_PARAGRAPH_\nSkirtingai nuo daugelio kit\xc5\xb3 programavimo kalb\xc5\xb3, BASIC programos vykdymo posistem\xc4\x97 kartu buvo ir vartotojo s\xc4\x85saja, neskirianti programos vykdom\xc5\xb3j\xc5\xb3 sakini\xc5\xb3 nuo vartotojo komand\xc5\xb3. \xc4\xaevesta eilut\xc4\x97s numer\xc4\xaf turinti komanda tapdavo programos dalimi, o be eilut\xc4\x97s numerio\xc2\xa0\xe2\x80\x93 buvo \xc4\xafvykdoma nedelsiant. Eilu\xc4\x8di\xc5\xb3 trynimo, programos paleidimo, programos eilu\xc4\x8di\xc5\xb3 skaitymo i\xc5\xa1 i\xc5\xa1orini\xc5\xb3 atminties \xc4\xafrengini\xc5\xb3 bei \xc4\xafvairios kitos pana\xc5\xa1ios komandos prireikus gal\xc4\x97jo b\xc5\xabti vykdomos ir kaip programos dalis. I\xc5\xa1 kitos pus\xc4\x97s, tiesiogiai renkami ir i\xc5\xa1kart vykdomi programos sakiniai leido naudoti sistem\xc4\x85 kaip gana patog\xc5\xb3 kalkuliatori\xc5\xb3._NEWLINE_Paprastai naujoje programoje eilut\xc4\x97s buvo numeruojamos de\xc5\xa1imties intervalu. Nauja eilut\xc4\x97 buvo \xc4\xafterpiama tiesiog suteikiant jai tarp dviej\xc5\xb3 gretim\xc5\xb3 eilu\xc4\x8di\xc5\xb3 numeri\xc5\xb3 esant\xc4\xaf nauj\xc4\x85 numer\xc4\xaf. \xe2\x80\x9eKlasikiniame\xe2\x80\x9c BASIC eilut\xc4\x97s turinys gal\xc4\x97jo b\xc5\xabti pakeistas tik surenkant nauj\xc4\x85 t\xc4\x85 pat\xc4\xaf numer\xc4\xaf turin\xc4\x8di\xc4\x85 eilut\xc4\x99. Norint vienoje vietoje \xc4\xafterpti daugiau devyni\xc5\xb3 eilu\xc4\x8di\xc5\xb3, tekdavo pernumeruoti program\xc4\x85, pakei\xc4\x8diant ir nuorodas GOTO bei GOSUB sakiniuose. V\xc4\x97lesn\xc4\x97s versijos tur\xc4\x97jo automatiniam pernumeravimui skirt\xc4\x85 komand\xc4\x85 RENUM (arba RESEQ) bei komand\xc4\x85 EDIT redaguoti esamai eilutei neperrenkant jos visos i\xc5\xa1 naujo.\n_START_SECTION_\nSintaks\xc4\x97\n_START_PARAGRAPH_\nBASIC sakiniai baigiami (atskiriami) perkeliant \xc4\xaf kit\xc4\x85 eilut\xc4\x99 arba dvita\xc5\xa1kiu (:). Jei sakinys t\xc4\x99siasi per kelias eilutes, kiekvienos eilut\xc4\x97s (i\xc5\xa1skyrus paskutini\xc4\x85j\xc4\x85) gale dedamas eilut\xc4\x97s prat\xc4\x99simo simbolis (_)._NEWLINE_Minimaliai BASIC sintaksei u\xc5\xbetenka LET, PRINT, IF ir GOTO komand\xc5\xb3, naudojant tik \xc5\xa1ias valdymo strukt\xc5\xabras kompiliatoriui nereikalingas stekas. Kompiliatoriuose, naudojan\xc4\x8diose stek\xc4\x85, galima prid\xc4\x97ti ciklus bei GOSUB komand\xc4\x85. Turint tok\xc4\xaf komand\xc5\xb3 rinkin\xc4\xaf, eilut\xc4\x97s turi b\xc5\xabti numeruojamos._NEWLINE_Kai kurie v\xc4\x97lesni BASIC kalbos dialektai atsisak\xc4\x97 eilu\xc4\x8di\xc5\xb3 numeravimo ir prid\xc4\x97jo kitoms kalboms (Pascal, C) b\xc5\xabdingas valdymo strukt\xc5\xabras Repeat\xe2\x80\xa6 Loop Until, While, Select\xe2\x80\xa6 Case_NEWLINE_Moderniausios BASIC kalbos (pavyzd\xc5\xbeiui, Visual Basic nuo 4 versijos) papildytos ir objektin\xc4\x97mis savyb\xc4\x97mis, pavyzd\xc5\xbeiui, For Each\xe2\x80\xa6 Next valdymo strukt\xc5\xabra, leid\xc5\xbeian\xc4\x8dia cikle perrinkti rinkinio ar masyvo elementus, taip pat paveld\xc4\x97jimu._NEWLINE_Atminties valdymas yra paprastas\xc2\xa0\xe2\x80\x93 da\xc5\xbeniausiai naudojama \xc5\xa1iuk\xc5\xa1li\xc5\xb3 surinkimo technologija._NEWLINE_BASIC kalboms neb\xc5\xabdingos standartin\xc4\x97s i\xc5\xa1orin\xc4\x97s bibliotekos (kaip C kalboje), ta\xc4\x8diau kompiliatoriuje yra \xc4\xafdiegtos standartin\xc4\x97s matematin\xc4\x97s, teksto manipuliavimo ir kitos svarbiausios funkcijos. Dalis BASIC dialekt\xc5\xb3 neleid\xc5\xbeia ra\xc5\xa1yti funkcij\xc5\xb3 ar proced\xc5\xabr\xc5\xb3, \xc5\xa1iose kalbose programos eiga kontroliuojama gausiai naudojamais GOTO sakiniais. Dialektai, kuriuose \xc4\xafvesta GOSUB komanda, leid\xc5\xbeia ra\xc5\xa1yti primityvias subprogramas. Kiti dialektai visi\xc5\xa1kai palaiko subprogramas ir funkcijas (kaip ir Pascal kalboje, subprograma, negr\xc4\x85\xc5\xbeinanti reik\xc5\xa1m\xc4\x97s skiriama nuo funkcij\xc5\xb3, gra\xc5\xbeinan\xc4\x8di\xc5\xb3 reik\xc5\xa1m\xc4\x99).\n_START_SECTION_\nDuomen\xc5\xb3 tipai\n_START_PARAGRAPH_\nAnkstyvosios BASIC versijos palaik\xc4\x97 tik tekstinius ir skaitinius duomen\xc5\xb3 tipus, taip pat vienma\xc4\x8dius ir dvima\xc4\x8dius \xc5\xa1i\xc5\xb3 tip\xc5\xb3 masyvus. Skai\xc4\x8diams buvo naudojamas vienas\xc2\xa0\xe2\x80\x93 racionalaus skai\xc4\x8diaus tipas, o tekstiniams duomenims\xc2\xa0\xe2\x80\x93 dinaminio ilgio eilut\xc4\x97s.\n_START_SECTION_\nPavyzd\xc5\xbeiai\n_START_PARAGRAPH_\n\xc5\xa0ie pavyzd\xc5\xbeiai yra pateikti GW-BASIC dialektu, ta\xc4\x8diau be joki\xc5\xb3 arba su labai menkais pakeitimais gali b\xc5\xabti sukompiliuoti bet kokiu BASIC kompiliatoriumi._NEWLINE_Papras\xc4\x8diausios programos pavyzdys:_NEWLINE_10 PRINT "Sveikas, pasauli!"20 END_NEWLINE_Sud\xc4\x97tingesn\xc4\x97s programos pavyzdys:_NEWLINE_10 INPUT "J\xc5\xabs\xc5\xb3 vardas: "; U$_NEWLINE_20 PRINT "Labas, "; U$_NEWLINE_30 INPUT "Kiek nor\xc4\x97tum\xc4\x97te \xc5\xbevaig\xc5\xbed\xc5\xbei\xc5\xb3: "; N_NEWLINE_35 S$ = ""40 FOR I = 1 TO N_NEWLINE_50 S$ = S$ + "*"55 NEXT I_NEWLINE_60 PRINT S$_NEWLINE_70 INPUT "Ar norite dar \xc5\xbevaig\xc5\xbed\xc5\xbei\xc5\xb3? "; A$_NEWLINE_80 IF LEN(A$) = 0 THEN GOTO 7090 A$ = LEFT$(A$, 1)100 IF (A$ = "T") OR (A$ = "t") THEN GOTO 30110 PRINT "Viso geriausio ";_NEWLINE_120 FOR I = 1 TO 200130 PRINT U$; " ";_NEWLINE_140 NEXT I_NEWLINE_150 PRINT'