IBM Lotus Symphony
|
Nasledujúca časť popisuje základné použitie premenných v Lotus® Symphony™ Basic.
Názov premennej sa môže skladať maximálne z 255 znakov. Prvým znakom názvu premennej musí byť písmeno A-Z alebo a-z. V názve premennej sa môžu používať aj čísla, ale interpunkčné znamienka a špeciálne znaky nie sú povolené, s výnimkou znaku podčiarnika ("_"). Lotus Symphony Basic sa pri identifikátoroch premenných nerozlišuje veľkosť písmen. Názvy premenných môžu obsahovať medzery, ale v tom prípade musia byť uzatvorené v hranatých zátvorkách.
Príklad | Popis |
---|---|
MyNumber=5 | Správne |
MyNumber5=15 | Správne |
MyNumber_5=20 | Správne |
My Number=20 | Neplatné, premenná s medzerou musí byť uzatvorená v hranatých zátvorkách. |
[My Number]=12 | Správne |
DéjàVu=25 | Neplatné, špeciálne znaky nie sú povolené |
5MyNumber=12 | Neplatné, premenná nesmie začínať číslom |
Number,Mine=12 | Neplatné interpunkčné znamienka nie sú povolené |
Lotus Symphony Basic nemusíte premenné explicitne deklarovať. Deklaráciu premenných môžete vykonávať pomocou príkazu Dim. Ak názvy oddelíte čiarkami, môžete naraz deklarovať viac ako jednu premennú. Ak chcete definovať typ premennej, použite za názvom znak deklarácie typu, alebo použite príslušné kľúčové slovo.
Príklad | Popis |
---|---|
DIM a$ | Premennú "a" deklaruje ako reťazec |
DIM a As String | Premennú "a" deklaruje ako reťazec |
DIM a$, b ako celé číslo | Jednu premennú deklaruje ako reťazec a jednu ako celé číslo |
DIM c ako boolovský výraz | Deklaruje c ako boolovskú premennú, ktorá môže mať hodnotu TRUE alebo FALSE |
Pri deklarovaní premenných je veľmi dôležité, aby ste každý raz použili znak deklarácie typu, aj keby bol v deklarácii použitý namiesto kľúčového slova. Preto sú nasledujúce príkazy neplatné:
Príklad | Popis |
---|---|
DIM a$ | Deklaruje "a" ako reťazec |
a="TestString" | Chýba typ-deklarácia: "a$=" |
![]() |
Keď ste už premennú deklarovali ako určitý typ, nemôžete premennú s rovnakým názvom znovu deklarovať ako iný typ! |
Ak chcete vynútiť deklaráciu premenných, použite nasledujúci príkaz:
OPTION EXPLICIT
Príkaz Option Explicit musí byť prvým riadkom v module, pred prvým SUB. Všeobecne musia byť explicitne deklarované len polia. Všetky ostatné premenné sú deklarované podľa charakteru deklarácie typu alebo, ak sú vynechané, ako predvolený typ Jednoduché .
Lotus Symphony Basic podporuje štyri triedy premenných:
Numerické premenné môžu obsahovať číselné hodnoty. Niektoré premenné sa používajú na ukladanie veľkých alebo malých čísiel, iné sa používajú pre pohyblivú rádovú čiarku alebo pre zlomkové čísla.
Reťazcové premenné obsahujú znakové reťazce.
Boolovské premenné obsahujú buď hodnotu TRUE alebo hodnotu FALSE.
Premenné objektov môžu v rámci dokumentu ukladať objekty rôznych typov, napríklad tabuľky a dokumenty.
Celočíselné premenné sa pohybujú v rozsahu od -32768 do 32767. Ak k celočíselnej premennej priradíte hodnotu pohyblivej rádovej čiarky, desatinné miesta budú zaokrúhlené na nasledujúce celé číslo. Celočíselné premenné sa v procedúrach rýchlo vypočítavajú a sú vhodné pre premenné počítadla v slučkách. Celočíselná premenná vyžaduje len 2 bajty pamäte. Znakom deklarácie typu je "%".
Dim Variable%
Dim Variable As Integer
Dlhé celočíselné premenné sa pohybujú v rozsahu od -2147483648 do 2147483647. Ak k dlhej celočíselnej premennej priradíte hodnotu pohyblivej rádovej čiarky, desatinné miesta budú zaokrúhlené na nasledujúce celé číslo. Dlhé celočíselné premenné sa v procedúrach rýchlo vypočítavajú a sú vhodné pre premenné počítadla v slučkách veľkých hodnôt. Dlhá celočíselná premenná vyžaduje 4 bajty pamäte. Znakom deklarácie typu je "&".
Dim Variable&
Dim Variable as Long
Desatinné premenné môžu nadobúdať kladné alebo záporné čísla alebo nulu. Presnosť je až na 29 desatinných miest.
Ako predpony desatinných čísel môžete používať znamienko plus (+) alebo mínus (-) (s alebo bez medzier).
Ak je desatinné číslo priradené celočíselnej premennej, Lotus Symphony Basic zaokrúhli číslo nahor alebo nadol.
Jednoduché premenné môžu nadobúdať kladné alebo záporné hodnoty v rozsahu od 3.402823 x 10E38 do 1.401298 x 10E-45. Jednoduché premenné sú premenné s pohyblivou rádovou čiarkou, v ktorých sa desatinná presnosť znižuje úmerne so zvyšovaním nedesatinnej časti čísla. Jednoduché premenné sú vhodné pre matematické výpočty priemernej presnosti. Výpočty si vyžadujú viac času ako v prípade celočíselných premenných, sú však rýchlejšie ako výpočty so zdvojenými premennými. Jednoduchá premenná vyžaduje 4 bajty pamäte. Znakom deklarácie typu je "!".
Dim Variable!
Dim Variable as Single
Zdvojené premenné môžu mať kladné alebo záporné hodnoty v rozsahu od 1.79769313486232 x 10E308 do 4.94065645841247 x 10E-324. Zdvojené premenné sú premenné s pohyblivou rádovou čiarkou, v ktorých sa desatinná presnosť znižuje úmerne so zvyšovaním nedesatinnej časti čísla. Zdvojené premenné sú vhodné pre presné výpočty. Výpočty vyžadujú viac času ako v prípade jednoduchých premenných. Zdvojená premenná vyžaduje 8 bajtov pamäte. Znakom deklarácie typu je "#".
Dim Variable#
Dim Variable As Double
Premenné mien sa interne ukladajú ako 64-bitové čísla (8 bajtov) a zobrazujú sa ako fixné desiatkové číslo s 15 nedesatinnými a 4 desatinnými miestami. Hodnoty sa pohybujú v rozsahu od -922337203685477.5808 do +922337203685477.5807. Premenné mien sa používajú na výpočet hodnôt mien s vysokou presnosťou. Znakom deklarácie typu je "@".
Dim Variable@
Dim Variable As Currency
Reťazcové premenné môžu ukladať znakové reťazce až so 65,535 znakmi. Každý znak sa ukladá ako príslušná hodnota Unicode. Reťazcové premenné sú vhodné pre spracovanie textových dokumentov v rámci programov a pre dočasný úložný priestor každého nevytlačiteľného znaku s maximálnou dĺžkou 64 Kb. Pamäť vyžadovaná pre ukladanie reťazcových premenných závisí od počtu znakov v premennej. Znakom deklarácie typu je "$".
Dim Variable$
Dim Variable As String
Boolovské premenné ukladajú len jednu z dvoch hodnôt: hodnotu TRUE alebo hodnotu FALSE. Číslo 0 sa vyhodnotí na hodnotu FALSE, všetky ostatné hodnoty sa vyhodnotia na hodnotu TRUE.
Dim Variable As Boolean
Premenné dátumov môžu obsahovať len hodnoty dátumov a časov uložené v internom formáte. Hodnoty priradené k premenným dátumov s Dateserial , Datevalue , Timeserial alebo Timevalue sú automaticky konvertované do interného formátu. dátumové premenné sa skonvertujú na normálne čísla s použitím funkcie Deň , Mesiac , Rok alebo Hodina , Minúta , Sekunda . Interný formát umožňuje porovnávanie hodnôt dátumu/času vypočítaním rozdielu medzi dvoma číslami. Tieto premenné môžu byť deklarované len s kľúčovým slovom Date.
Dim Variable As Date
Premenná je hneď po jej deklarovaní automaticky nastavená na hodnotu "Null". Všimnite si nasledujúce konvencie:
Numerické premenné majú hneď po svojej deklarácii automaticky priradenú hodnotu "0".
Dátumovým premenným bude interne priradená hodnota 0; čo je rovnocenné s konverziou hodnoty na "0" pomocou funkcie Deň , Mesiac , Rok alebo Hodina , Minúta , Sekunda .
Reťazcové premenné majú po svojej deklarácii priradený prázdny reťazec ("").
Lotus Symphony Basic môžete použiť jedno- alebo viacrozmerné polia, definované definovaným typom premennej. Polia sú vhodné na úpravu zoznamov a tabuliek v programoch. Jednotlivé prvky poľa môžu byť adresované prostredníctvom numerického indexu.
Polia musia byť deklarované príkazom Dim.
Príklad | Popis |
---|---|
DIM text$(20) | 21 prvkov očíslovaných od 0 do 20 |
DIM text$(5,4) | 30 prvkov (matica 6 x 5 prvkov) |
DIM text$(5 až 25) | 21 prvkov očíslovaných od 5 do 25 |
DIM text$(-15 až 5) | 21 prvkov (vrátane 0), očíslovaných od -15 do 5 |
Rozsah indexov môže zahrňovať kladné aj záporné čísla.
Konštanty majú pevnú hodnotu. V programe sú definované len raz a neskôr ich nie je možné znova definovať:
CONST ConstName=Expression