Turinys

# Naudojami kintamieji

Apibrėžia kintamųjų naudojimo pagrindus LibreOffice ''Beisikas''.

## Įvardijami žymėjimai kintamojo identifikatoriams

Kintamojo pavadinimas gali būti sudarytas iš ne daugiau kaip 255 rašmenų. Pirmas kintamojo pavadinimo rašmuo privalo būti raidė A-Z arba a-z. Skaičiai gali būti naudojami kintamojo pavadinime, bet skyrybos ženklai ir specialieji ženklai nėra leidžiami, išskyru pabraukimo brūkšnį ("_"). LibreOffice ''Beisiko'' kintamojo identifikatoriai nėra skiriami didžiosiomis ir mažosiomis raidėmis. Kintamųjų pavadinimai gali susidėti iš tarpų, tačiau tokiu atveju privalo būti apskliausti laužtiniais skliaustais.

Kintamųjų identifikatorių pavyzdžiai:

        Mano skaičius = 5       „Teisingas“
        Mano skaičius 5 = 15     „Teisingas“
        Mano skaičius_5=20    „Teisingas“
        Mano skaičius = 20   „Nėra teisingas. Kintamasis su tarpu privalo būti laužtiniuose skliaustuose“
        [Mano skaičius] = 12   „Teisingas“
        DejaVu = 25        „Nėra teisingas, specialieji ženklai neleidžiami“
        5 Mano skaičius = 12    „Nėra teisingas, kintamasis negali prasidėti skaičiumi“
        Skaičius, mano = 12 „Nėra teisingas, skyrybos ženklai nėra leidžiami“

## Aprašomi kintamieji

LibreOffice „Beisike“ nereikia aprašyti kintamųjų tiksliai. Kintamasis gali būti aprašytas Blankus sakiniu. Galite aprašyti daugiau nei vieną kintamąjį vienu metu, atskirdami pavadinimus kableliu. Norėdami aprašyti kintamojo tipą, naudokite tipo aprašymo ženklą po pavadinimo arba tinkamą raktinį žodį.

Kintamųjų aprašų pavyzdžiai:

        Blankus a$        „Aprašo kintamąjį „a“ kaip Eilutę“
        Blankus Kaip Eilutė        „Aprašo kintamąjį „a“ kaip Eilutę“
        Blankus a$, b       kaip sveikasis skaičius „Aprašo vieną kintamąjį kaip „a“ kaip Eilutę ir vieną kaip sveikąjį skaičių“
        Blankus c kaip loginis duomenų tipas       „Aprašo kintamąjį c kaip loginį duomenų tipo kintamąjį, kuris gali būti TEISINGAS arba NETEISINGAS“

Kai aprašėte kintamąjį tam tikru tipu, nebegalite aprašyti kintamojo tuo pačiu pavadinimu kaip kitą tipą!

When you declare multiple variables in a single line of code you need to specify the type of each variable. If the type of a variable is not explicitly specified, then Basic will assume that the variable is of the Variant type.

      ' Both variables "a" and "b" are of the Integer type
      Dim a As Integer, b As Integer
      ' Variable "c" is a Variant and "d" is an Integer
      Dim c, d As Integer
      ' A variable can also be explicitly declared as a Variant
      Dim e As Variant, f As Double

The Variant type is a special data type that can store any kind of value. To learn more, refer to the section The Variant type below.

### Priverstiniai kintamojo aprašai

Priversti kintamųjų aprašus, naudokite pateiktą komandą:

    Option Explicit

išreikštinis parinkties teiginys turi būti pirmoje modulio eilutėje, prieš pirmąjį SUB. Paprastai tik tai masyvai turi būti aprašyti išreikštinai. Visi kiti kintamieji yra aprašyti pagal aprašo tipo rašmenį arba, jeigu praleidžiama - kaip numatytąjį tipą Pavienis.

## Kintamojo tipai

LibreOffice „Beisikas“ palaiko keturias kintamųjų klases:

- Skaitmeniniai kintamieji gali apimti skaičių reikšmes. Kai kurie kintamieji yra naudojami įrašyti didelius arba mažus skaičius, o kiti yra naudojami slankiąjam kableliu trupmenoms.

- Eilutė kintamieji priklauso rašmens eilutėms.

- Loginis kintamieji priklauso TEISINGA arba KLAIDINGA reikšmei.

- Objektas kintamieji gali įrašyti įvairaus tipo objektus, tokius kaip lentelės ir dokumentai.

### Sveikųjų skaičių kintamieji

Sveikųjų skaičių kintamieji yra nuo -32768 iki 32767. Jeigu priskiriate slankiojo kablelio reikšmę sveikąjam kintamąjam, dešimtainės skiltys yra aplink kitą sveikąjį skaičių. Sveikųjų skaičių kintamieji būna greitai apskaičiuojami procedūrose ir tinka skaitiklio kintamiesiems cikluose. Sveikojo skaičiaus kintamąjam yra reikalingi du atminties baitai. „%“ yra tipo aprašo rašmuo.

    Dim Variable%
    Dim Variable As Integer

### Ilgajo sveikojo skaičiaus kintamieji

Ilgojo sveikajo skaičiaus kintamieji yra nuo -2147483648 iki 2147483647. Jeigu priskiriate slankiojo kablelio reikšmę, dešimtainės skiltys yra apavalinamos į kitą sveikąjį skaičių. Ilgojo sveikajo skaičiaus kintamieji yra greitai skaičiuojami procedūrose ir yra tinkamos skaičiavimo kintamiesiems didelės reikšmės cikluose. Ilgojo sveikajo skaičiaus kintamąjam yra privalomas keturių baitų atmintis. „&“ yra aprašo tipo rašmuo.

    Dim Variable&
    Dim Variable As Long

### Dešimtainiai kintamieji

Dešimtainiai kintamieji gali būtų teigiami arba neigiami skaičiai, arba nulis. Tikslumas yra iki 29 skaitmenų.

Galite naudoti pliuso (+) arba minuso (-) ženklus kaip priešdėlius dešimtainiams skaičiams (su arba be tarpų).

Jeigu dešimtainis skaičius yra priskirtas sveikojo skaičiaus kintamąjam, LibreOffice „Beisikas“ suapvalina skaičius į viršų arba į apačią.

### Atskiri kintamieji

Atskiri kintamieji gali būti teigiamos arba neigiamos reikšmės nuo 3.402823 x 10E38 iki 1.401298 x 10E-45. Atskiri kintamieji yra slankiojo kablelio kintamieji, kuriame dešimtainis tikslumas sumažinamas lygiai taip pat kaip ne dešimtainė skaičiaus dalis yra padidinama. Atskiri kintamieji yra tinkami matematiniams vidutinio tikslumo skaičiavimams. Skaičiavimams reikia daugiau laiko nei sveikųjų skaičių kintamiesiems, bet jie yra greitesni nei skaičiavimai su dvigubais kintamaisiais. Atskiri kintamieji reikalauja 4 baitų atmintis. Aprašo tipo rašmuo yra „!“.

    Dim Variable!
    Dim Variable As Single

### Dvigubi kintamieji

Dvigubi kintamieji gali būti teigiamos arba neigiamos reikšmės nuo 1.79769313486232 x 10E308 iki 4.94065645841247 x 10E-324. Dvigubi kintamieji yra slankiojo kablelio kintamieji, kuriuose dešimtainis tikslumas yra mažinamas lygiai taip pat kaip nedešimtainė skaičiaus dalis didinama. Dvigubi kintamieji tinka tiksliems skaičiavimams. Skaičiavimai reikalauja daugiau lauko nei, kad atskiri kintamieji. Dvigubi kintamieji reikalauja 8 baitų atminties. Tipo aprašo rašmuo yra „#“.

    Blankus kintamasis#
    Dim Variable As Double

### Valiutos kintamieji

Valiutos kintamieji yra saugomi viduje kaip 64 bitų skaičiai (8 baitai) ir rodomi kaip fiksuotas dešimtainis skaičius su 15 ne dešimtainių ir 4 dešimtainėm skiltimis. Reikšmės yra nuo -922337203685477.5808 iki +922337203685477.5807. Valiutos kintamieji yra naudojami apskaičiuoti valiutos reikšmes su aukštu tikslumu. Tipo aprašo rašmuo yra „@“.

    Dim Variable@
    Dim Variable As Currency

### Ženklai sveikiesiems skaičiams

Skaičiai gali būti užkoduoti naudojant aštuonetaines ir šešioliktaines formas.

      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

### Eilutės kintamieji

Eilutės kintamieji gali turėti rašmens eilutes sudarytas iš iki 2,147,483,648 rašmenų. Kiekviena pastraipa yra saugoma kaip atsakanti unikodo reikšmė. Eilutės kintamieji tinkla žodžio apdorojimui su programomis ir trumpalaikei atminčiai bet kokio ne spausdinamo rašmens iki daugiausia 2 gigabaitų ilgio. Atmintis reikalaujanti eilutės kintamųjų saugojimą, priklausomo nuo rašmenų skaičiaus kintamąjame. Tipo aprašo rašmuo yra „$“.

„Beisiko“ Eilutės funkcijos, pirmasis eilutės rašmuo turi rodyklę 1.

    Dim Variable$
    Dim Variable As String

### Loginiai kintamieji

Loginiai kintamieji saugomi tik dviejų reikšmių: TEISINGI arba KLAIDINGI. A skaičius 0 įvertinamas kaip KLAIDINGAS, o visos kitos reikšmės įvertinamos kaip TEISINGOS.

    Dim Variable As Boolean

### Datos kintamieji

Datos kintamieji gali apimti tik datos ir laiko reikšmes, saugomas vidiniame formate. Reikšmės yra priskiriamos datos kintamiesiems su Datos nuoseklumas, Datos reikšmė, Laiko nuoseklumas arba Laiko reikšmė yra automatiškai konvertuojami į vidinius formatus. Datos kintamieji yra konvertuojami į normalius skaičius, naudojant Diena,Mėnesis,Metai arba Valanda, Minutė,Sekundė funkciją. Vidinis formatas įgalina palyginimą datos/laiko reikšmių, skaičiuojant skirtumą tarp dviejų skaičių. Šie kintamieji gali būti apibrėžti tik su raktažodžiuData.

    Dim Variable As Date

### Literals for Dates

Date literals allow to specify unambiguous date variables that are independent from the current language. Literals are enclosed between hash signs #. Possible formats are:

- #yyyy-mm-dd#

- #mm/dd/yyyy#

      start_date = #1899-12-30# ' = 0
      dob = #2010-09-28#

## The Variant type

Variables declared as Variant can handle any data type. This means that the actual data type is defined during runtime as a value is assigned to the variable.

There are three main ways to create a Variant variable, as shown below:

      Dim varA            ' The type is not specified, hence the variable is a Variant
      Dim varB as Variant ' The variable is explicitly declared as a Variant
      varC = "abc"        ' Previously undeclared variables are treated as Variants

The example below uses the TypeName function to show how the type of a Variant variable changes upon assignment.

      Dim myVar As Variant
      MsgBox TypeName(myVar) ' Empty
      myVar = "Hello!"
      MsgBox TypeName(myVar) ' String
      myVar = 10
      MsgBox TypeName(myVar) ' Integer

A Variant variable is initialized with the Empty special data type. You can use the IsEmpty function to test if a variable is an Empty Variant.

You can also use the keyword Any to declare a variable as a Variant. However, Any is deprecated and is available for backward compatibility.

Arguments with type Variant or Any passed in function calls are not checked for their types.

      Dim myVar As Any ' Variable "myVar" is a Variant

## Pradinės kintamojo reikšmės

Vos tik kintamasis buvo aprašytas, jis automatiškai nustatomas į nulinę reikšmę. Atkreipkite dėmesį į toliau pateiktus susitarimus:

Skaitmeniniai kintamiesiems yra automatiškai priskiriama „0“ reikšmė vos tik jie yra aprašyti.

Datos kintamieji yra priskiriami reikšmei 0 viduje; lygiaverčiai konvertuojant reikšmę į „0“ su Diena, Mėnesis, Metai arba Valanda, Minutė, Sekundė funkcija.

Eilutės kintamiesiems yra priskiriamos tuščios eilutės („“), kai jie būna aprašyti.

## Masyvas

LibreOffice „Beisikas“ turi vieno arba kelių matmenų masyvus, apibrėžtus specialiu kintamojo tipu. Masyvai yra tinkami redagavimo sąrašams ir lentelėms programose. Individualūs masyvo elementai gali būti adresuoti per skaitmeninę rodyklę.

Masyvai privalo būti aprašyti su blankus sakinys. Yra keli būdai apibrėžti masyo rodyklės rėžį:

        Blankus tekstas$(20)          „21 elementas sunumeruotas nuo 0 iki 20“
        Blankus tekstas$(5,4)        „30 elementų (matrica iš 6 x 5 elementų)“
        Blankus tekstas$(nuo 5 iki 25)   „21 elementas sunumeruotas nuo 5 iki 25“
        Blankus tekstas$(nuo -15 iki 5) „21 elementas (įskaitant 0), sunumeruotas nuo -15 iki 5“

Rodyklės rėžis gali apimti teigiamus taip pat kaip ir neigiamus skaičius.

## Konstantos

Konstantos turi fiksuotą reikšmę. Jos yra apibrėžiamos tik tai vieną kartą programoje ir negali būti apibrėžtos iš naujo:

    Const ConstName=Expression

Susijusios temos

Basic Constants

Dim Statement

Paremkite mus!