1.2.9. Zadávanie dát počítaču

 

Naučili ste sa, ako priradíte premenným hodnotu príkazom LET a INPUT. Tento spôsob nie je niekedy výhodný, hlavne vtedy, ak je zadávaných údajov viac. V takom prípade sa používa príkaz READ, s ktorým úzko súvisia príkazy DATA a RESTORE.

Príkaz READ má tvar

      READ zoznam premenných

kde zoznam premenných je zoznam číselných a reťazcových premenných, oddelených od seba čiarkou.

Príkaz DATA má tvar

      DATA zoznam výrazov

kde zoznam výrazov je zoznam aritmetických výrazov alebo reťazcov, ktoré sú oddelené od seba čiarkou.

V programe môžete použiť viac príkazov READ a DATA, pričom príkaz DATA môže byť na ľubovolnom mieste programu. Priradenie hodnôt  premenným sa vykoná takto:

Podobne, ako má počítač ukazovateľ pre výpis na obrazovku, má pre príkaz DATA ukazovateľ dát, ktorý ukazuje na výraz v príkaze DATA, ktorého hodnota sa bude priraďovať ako nasledujúca.

Na začiatku programu sa nastaví ukazovateľ na prvý výraz v prvom príkaze DATA. Príkazom READ sa priradí premennej hodnotou výrazu, na ktorý je nastavený ukazovateľ. Po priradení nastaví na ďalší výraz v príkaze DATA. Ak sa položky zo zoznamu DATA vyčerpali, ukazovateľ sa nastaví na prvú položku v nasledujúcom príkaze DATA.

V príkaze READ môže byť v zoznamu vedľa seba číselné aj reťazcové premenné. Číselnej premennej sa môže priradiť len číselná hodnota, t. j. odpovedajúci výraz v príkaze DATA musí byť aritmetický výraz. Reťazcovej premennej sa môže priradiť len reťazec.

      10 DATA 2*3,.5,"den"

      20 READ a,b,c$

      30 PRINT a,b,c$

Po vykonaní programu budú mať premenné tieto hodnoty:

      a=6, b=0.5, c$="den"

Ak je položiek v príkazoch DATA menej ako premenných v príkazoch READ, počítač ohlási chybu. Zmeňte riadok 10 na

      10 DATA 1,2

Po odštartovaní programu vypíše počítač hlásenie

      E Out of DATA

Niekedy je treba použiť rovnaké hodnoty pre rôzne premenné. Aby sa nemusel zoznam dát vypisovať viackrát za sebou v programe, využijeme príkaz RESTORE, ktorý má tvar:

      RESTORE číslo riadku

Tento príkaz nastaví ukazovateľ dát na prvú položku v príkaze DATA na riadku so zadaným číslom. Ak nie je číslo riadku zadané, ukazovateľ dát sa nastaví na prvú položku v prvom príkaze DATA v programe. Vyskúšajte to na príklade:

      10 DATA 1,2,3

      20 READ a,b,c,pocet

      30 RESTORE

      40 READ a1,a2

      50 DATA 10,20

      60 RESTORE 50

      70 READ i,j

Premenným a,b,c,pocet,a1,a2,i,j sa príkazom READ priradia hodnoty 1,2,3,10,1,2,10,20.

Často sa používa príkaz READ vy cykle:

      10 DIM a(8)

      20 DATA 3,9,5,6,4,1,7,8,78,55

      30 FOR i=1 TO 8

      40 READ a(i)

      50 NEXT i

Všimli ste si, že v príkaze DATA je viac ako 8 položiek, hoci indexovaných premenných je len 8. To však nevadí, položky v príkaze DATA nemusia byť nikdy prečítané.

Ak použijete v programe príkaz CLEAR na zrušenie premenných, počítajte s tým, že sa vykoná zároveň RESTORE.