Uporaba spremenljivk

Sledi opis osnov uporabe spremenljivk v LibreOffice Basicu.

Pravila poimenovanja za identifikatorje spremenljivk

Ime spremenljivke ima lahko najve─Ź 255 znakov. Prvi znak imena mora biti ─Źrka. V imenu spremenljivke lahko uporabite tudi ┼ítevilke, lo─Źila in ostali posebni znaki pa razen pod─Źrtaja (┬╗_┬ź) niso dovoljeni. LibreOffice Basic pri imenih spremenljivk ne razlikuje med velikimi in malimi ─Źrkami. Imena spremenljivk lahko vsebujejo presledke, vendar morajo biti v tem primeru ograjena v zavite oklepaje.

Primeri imen spremenljivk:


    MojaStevilka=5      'Pravilno'
    MojaStevilka5=15    'Pravilno'
    MojaStevilka_5=20   'Pravilno'
    Moja stevilka=20    'Neveljavno. Ime spremenljivke s presledkom mora biti ograjeno z oglatimi oklepaji'
    [Moja stevilka]=12  'Pravilno'
    MojaŠtevilka=25       'Neveljavno, posebni znaki niso dovoljeni.'
    5MojaStevilka=12    'Neveljavno, ime spremenljivke se ne sme za─Źeti s ┼ítevilko.'
    Stevilka,moja=12  'Neveljavno, lo─Źila niso dovoljena.'

Deklariranje spremenljivk

V LibreOffice Basicu vam spremenljivk ni treba posebej deklarirati. Deklaracijo lahko izvedete z ukazom Dim. Naenkrat lahko deklarirate ve─Ź spremenljivk tako, da jih navedete in lo─Źite z vejico. Za dolo─Źitev vrste spremenljivke uporabite znak za deklaracijo vrste za imenom spremenljivke ali ustrezno klju─Źno besedo.

Primeri za deklaracije spremenljivke:


    Dim a$               'Deklarira spremenljivko ┬╗a┬ź kot String (niz znakov)'
    Dim a As String      'Deklarira spremenljivko ┬╗a┬ź kot String (niz znakov)'
    Dim a$, b As Integer 'Deklarira prvo spremenljivko kot String (niz znakov) in drugo kot Integer ÔÇô celo ┼ítevilo'
    Dim c As Boolean     'Deklarira spremenljivko c kot Boolean, to je logi─Źno spremenljivko, ki je lahko res (TRUE) ali ni res (FALSE)'
warning

Ko enkrat deklarirate spremenljivko dolo─Źene vrste, ne morete deklarirati spremenljivke druge vrste z enakim imenom!


Obvezno deklariranje spremenljivk

─îe ┼żelite, da bo deklaracija spremenljivk obvezna, uporabite slede─Źi ukaz:


Option Explicit

Ukaz Option Explicit mora biti prva vrstica v modulu, pred prvim ukazom SUB. V splo┼ínem je izrecna deklaracija potrebna samo za polja. Vse ostale spremenljivke se deklarirajo v skladu z znakom za vrsto deklaracije ali pa, ─Źe ga ni, kot privzeta vrsta Single.

Vrste spremenljivk

LibreOffice Basic podpira štiri razrede spremenljivk:

Spremenljivke celo┼ítevil─Źne vrste Integer

Spremenljivke vrste Integer imajo razpon od -32768 do 32767. ─îe spremenljivki vrste Integer dodelite vrednost vrste ┼ítevila s plavajo─Źo vejico, se decimalna mesta zaokro┼żijo na naslednje celo ┼ítevilo. S spremenljivkami vrste Integer se hitro ra─Źuna in so primerne za ┼ítevce znotraj programskih zank. Zasedejo samo dva bajta pomnilnika. Znak za deklaracijo vrste je ┬╗%┬ź.


Dim Variable%
Dim Variable As Integer

Spremenljivke vrste Long Integer

Celo┼ítevil─Źne spremenljivke vrste Long Integer imajo razpon od -2147483648 do 2147483647. ─îe spremenljivki vrste Long Integer dodelite vrednost vrste ┼ítevila s plavajo─Źo vejico, se decimalna mesta zaokro┼żijo na naslednje celo ┼ítevilo. S spremenljivkami vrste Long Integer se hitro ra─Źuna in so zato primerne za ┼ítevce znotraj programskih zank. Zasedejo ┼ítiri bajte pomnilnika. Znak za deklaracijo vrste je ┬╗&┬ź.


Dim Variable&
Dim Variable As Long

Decimalne spremenljivke

Decimalne spremenljivke imajo lahko negativno ali pozitivno vrednost ali so enake ni─Ź. Natan─Źnost je do 29 decimalk.

Kot predznak za decimalne številke lahko uporabite znak plus (+) ali minus (-) (s presledkom ali brez).

─îe je celo┼ítevil─Źni spremenljivki dolo─Źena decimalna ┼ítevilka, LibreOffice Basic zaokro┼żi vrednost navzgor ali navzdol.

Spremenljivke vrste Single

Spremenljivke vrste Single lahko zavzemajo negativno ali pozitivno vrednost z obsegom od 3,402823 x 10E38 do 1,401298 x 10E-45. Gre za ┼ítevila s plavajo─Źo vejico, pri katerih se natan─Źnost decimalnega dela ┼ítevila manj┼ía z nara┼í─Źanjem celega dela ┼ítevila. Primerne so za matemati─Źne izra─Źune s povpre─Źno natan─Źnostjo. Izra─Źuni zahtevajo ve─Ź ─Źasa kot spremenljivke vrste Integer, so pa bolj hitri od izra─Źunov s spremenljivkami vrste Double. Spremenljivka vrste Single zasede 4 bajte pomnilnika. Znak za deklaracijo vrste je ┬╗!┬ź.


Dim Variable!
Dim Variable As Single

Spremenljivke vrste Double

Spremenljivke vrste Double lahko imajo negativno ali pozitivno vrednost z obsegom od 1,79769313486232 x 10E308 do 4,94065645841247 x 10E-324. Gre za ┼ítevila s plavajo─Źo vejico, pri katerih se natan─Źnost decimalnega dela ┼ítevila manj┼ía z nara┼í─Źanjem celega dela ┼ítevila. Primerne so za natan─Źne matemati─Źne izra─Źune. Izra─Źuni zahtevajo ve─Ź ─Źasa kot spremenljivke vrste Single. Spremenljivka vrste Double zasede 8 bajte pomnilnika. Znak za deklaracijo vrste je ┬╗#┬ź.


Dim Spremenljivka#
Dim Variable As Double

Spremenljivke vrste Currency

Spremenljivke vrste Currency (valuta) so notranje hranjene kot 64-bitna ┼ítevila (8 bajtov) in prikazana kot ┼ítevilke s 15 celimi mesti in 4 decimalnimi mesti. Njihove vrednost obsegajo od -922.337.203.685.477,5808 do +922.337.203.685.477,5807. Uporabljamo jih za ra─Źunanje finan─Źnih postavk z visoko natan─Źnostjo. Znak za deklaracijo vrste je ┬╗@┬ź.


Dim Variable@
Dim Variable As Currency

Zapisi celih števil

Števila so lahko v osmiški ali šestnajstiški obliki.


  xi = &o13 '    8 + 3
  ci = &h65 ' 6*16 + 5
  MAX_Integer =  &o77777 '  32767 = &h7FFF
  MIN_Integer = &o100000 ' -32768 = &h8000
  MAX_Long = &h7fffffff '  2147483647 = &o17777777777
  MIN_Long = &h80000000 ' -2147483648 = &o20000000000

Spremenljivke vrste String

Spremenljivke vrste String lahko vsebujejo nize znakov do dol┼żine 2.147.483.648 znakov. Vsak znak je shranjen kot ustrezna koda Unicode. Spremenljivke vrste String so primerne za obdelavo besedil v okviru programa in za shranjevanje poljubnih kombinacij znakov do dol┼żine 2 Gb. Velikost potrebnega pomnilnika za spremenljivko vrste String je odvisna od ┼ítevila znakov v njej. Znak za deklaracijo vrste je ┬╗$┬ź.

tip

V funkcijah BASIC z nizi (s spremenljivkami vrste String) ima prvi znak niza indeks 1.



Dim Variable$
Dim Variable As String

Spremenljivke vrste Boolean

Spremenljivke vrste Boolean lahko shranjujejo le dve vrednosti: ali RES ali NI RES. Število 0 velja za FALSE, vse ostale vrednosti pa kot TRUE.


Dim Variable As Boolean

Spremenljivke vrste Date

Spremenljivke vrste Date vsebujejo podatke o datumu in ─Źasu, pretvorjene v notranjo obliko. Vrednosti, dodeljene spremenljivki vrste Date z Dateserial, Datevalue, Timeserial ali Timevalue, se samodejno pretvorijo v notranjo obliko. Datumske spremenljivke pretvorimo v ┼ítevilke z uporabo funkcij Day, Month, Year ali Hour, Minute, Second. Notranja oblika omogo─Źa primerjavo oziroma izra─Źun razlike med dvema ┼ítevilkama. Te spremenljivke je mogo─Źe deklarirati samo s klju─Źno besedo Date.


Dim Variable As Date

Za─Źetne vrednosti spremenljivk

Takoj, ko je spremenljivka deklarirana, dobi vrednost ┬╗Null┬ź. Pri tem veljajo naslednja pravila:

Spremenljivke vrste Numeric dobijo ob deklaraciji vrednost ┬╗0┬ź.

Spremenljivke vrste Date dobijo interno vrednost 0, to je vrednost, ki bi jo dobili, ─Źe bi vanje vnesli vrednost ┬╗0┬ź s funkcijami Day, Month, Year ali Hour, Minute, Second.

Spremenljivke vrste String ob deklaraciji dobijo vrednost praznega niza ("").

Polja

LibreOffice Basic podpira eno- ali ve─Źdimenzionalna polja spremenljivk z dano vrsto spremenljivke. Polja so primerna za urejanje seznamov ali tabel v programih. Posamezni elementi polja so naslovljivi s ┼ítevil─Źnim indeksom.

Polja morate deklarirati z ukazom Dim. Za definicijo obsega indeksa polja sta na razpolago dve metodi:


    Dim besedilo$(20)       '21 elementov, o┼ítevil─Źenih od 0 do 20'
    Dim besedilo$(5,4)      '30 elementov (matrika 6 x 5 elementov)'
    Dim besedilo$(5 to 25)   '21 elementov, o┼ítevil─Źenih od 5 do 25'
    Dim besedilo$(-15 To 5) '21 elementov, o┼ítevil─Źenih od -15 do 5 (vklju─Źno z 0)'

Obseg indeksa vsebuje lahko pozitivne in negativne številke.

Konstante

Konstante imajo nespremenljivo vrednost. Dolo─Źimo jih samo enkrat v programu in jih kasneje ni mogo─Źe znova definirati:


Const ConstName=Expression

Podprite nas!