IBM Lotus Symphony
|
Ta sekcja zawiera podstawowe informacje na temat używania zmiennych w języku Basic programu Lotus® Symphony™.
Nazwa zmiennej może składać się z maksymalnie 255 znaków. Pierwszy znak nazwy zmiennej musi być literą A-Z lub a-z. W nazwach zmiennych można również używać cyfr, ale znaki przestankowe i znaki specjalne są zabronione, z wyjątkiem znaku podkreślenia ("_"). W języku Basic programu Lotus Symphony wielkość liter w identyfikatorach zmiennych nie jest rozróżniana. Nazwy zmiennych mogą zawierać odstępy, ale muszą być wtedy ujęte w nawiasy kwadratowe.
Przykład | Opis |
---|---|
MojNumer=5 | Poprawnie |
MojNumer5=15 | Poprawnie |
MojNumer_5=20 | Poprawnie |
Moj Numer=20 | Niepoprawnie: nazwę zmiennej zawierającą odstęp należy ująć w nawiasy kwadratowe |
[Moj Numer]=12 | Poprawnie |
DéjàVu=25 | Niepoprawnie: znaki specjalne są niedozwolone |
5MojNumer=12 | Niepoprawnie: nazwa zmiennej nie może zaczynać się od cyfry |
Numer,Moj=12 | Niepoprawnie: znaki przestankowe są niedozwolone |
W języku Basic programu Lotus Symphony nie ma potrzeby jawnego deklarowania zmiennych. Zmienną można zadeklarować za pomocą instrukcji Dim. Można zadeklarować kilka zmiennych jednocześnie, oddzielając nazwy przecinkiem. Aby zdefiniować typ zmiennej, po nazwie należy użyć znaku deklaracji typu lub odpowiedniego słowa kluczowego.
Przykład | Opis |
---|---|
DIM a$ | Deklaruje zmienną "a" typu String |
DIM a As String | Deklaruje zmienną "a" typu String |
DIM a$, b As Integer | Deklaruje jedną zmienną typu String i drugą typu Integer |
DIM c As Boolean | Deklaruje zmienną c typu Boolean, której wartość może być prawdą (TRUE) lub fałszem (FALSE) |
Bardzo ważne podczas deklarowania zmiennych jest to, aby za każdym razem używać znaku deklaracji typu, nawet jeśli był używany w deklaracji zamiast słowa kluczowego. Dlatego poniższe instrukcje są nieprawidłowe:
Przykład | Opis |
---|---|
DIM a$ | Deklaruje zmienną "a" typu String |
a="LancuchTestowy" | Brak deklaracji typu: "a$=" |
![]() |
Po zadeklarowaniu zmiennej konkretnego typu nie można ponownie zadeklarować zmiennej o tej samej nazwie, ale o innym typie. |
Aby wymusić deklarację zmiennych, należy użyć następującej komendy:
OPTION EXPLICIT
Instrukcja Option Explicit musi być pierwszym wierszem w module (przed pierwszą sekcją SUB). Ogólnie tylko tablice wymagają jawnej deklaracji. Wszystkie pozostałe zmienne są deklarowane zgodnie ze znakiem deklaracji typu lub - jeśli go pominięto - jako zmienne o domyślnym typie Single.
Język Basic programu Lotus Symphony obsługuje cztery klasy zmiennych:
Zmienne liczbowe mogą zawierać wartości liczbowe. Niektóre zmienne są używane do przechowywania dużych lub małych liczb, a inne są używane dla liczb zmiennoprzecinkowych lub ułamkowych.
Zmienne łańcuchowe zawierają łańcuchy znaków.
Zmienne logiczne zawierają wartość PRAWDA lub FAŁSZ.
Zmienne obiektowe mogą zawierać obiekty różnego typu, takie jak tabele i dokumenty zawarte w dokumencie.
Wartości zmiennych całkowitych typu Integer mogą należeć do zakresu od -32768 do 32767. Jeśli wartość zmiennoprzecinkowa zostanie przypisana do zmiennej całkowitej, miejsca dziesiętne zostaną zaokrąglone do następnej liczby całkowitej. Zmienne całkowite są szybko obliczane w procedurach i używane jako zmienne liczników w pętlach. Zmienna całkowita wymaga tylko dwóch bajtów pamięci. Znakiem deklaracji tego typu jest "%".
Dim Zmienna%
Dim Zmienna As Integer
Wartości zmiennych całkowitych typu Long Integer mogą należeć do zakresu od -2147483648 do 2147483647. Jeśli wartość zmiennoprzecinkowa zostanie przypisana do zmiennej long integer, miejsca dziesiętne zostaną zaokrąglone do następnej liczby całkowitej. Zmienne typu Long Integer są szybko obliczane w procedurach i używane jako zmienne liczników w pętlach dla dużych wartości. Zmienna typu long integer wymaga czterech bajtów pamięci. Znakiem deklaracji tego typu jest "&".
Dim Zmienna&
Dim Zmienna as Long
Zmienne typu Decimal mogą być liczbami dodatnimi lub ujemnymi albo mieć wartość zero. Są one określane z dokładnością do 29 cyfr.
Jako przedrostka liczb dziesiętnych można użyć znaków plus (+) lub minus (-) wpisywanych ze spacją lub bez niej.
Jeśli liczba dziesiętna jest przypisywana do zmiennej całkowitoliczbowej, język Basic programu Lotus Symphony zaokrągli ją w górę lub w dół.
Zmienne typu Single mogą przyjmować wartości dodatnie lub ujemne z zakresu od 3,402823 x 10E38 do 1,401298 x 10E-45. Zmienne typu Single są zmiennymi zmiennoprzecinkowymi, w których liczba miejsc dziesiętnych zmniejsza się, gdy wzrasta część całkowita liczby. Zmienne typu Single są używane w obliczeniach matematycznych o średniej dokładności. Obliczenia wymagają więcej czasu niż w przypadku zmiennych typu Integer, ale są szybsze niż obliczenia przeprowadzane na zmiennych typu Double. Zmienna typu Single wymaga 4 bajtów pamięci. Znakiem deklaracji tego typu jest "!".
Dim Zmienna!
Dim Zmienna as Single
Zmienne typu Double mogą przyjmować wartości dodatnie lub ujemne z zakresu od 1,79769313486232 x 10E308 do 4,94065645841247 x 10E-324. Zmienne typu Double są zmiennymi zmiennoprzecinkowymi, w których liczba miejsc dziesiętnych zmniejsza się, gdy wzrasta część całkowita liczby. Zmienne typu Double są używane w obliczeniach o dużej dokładności. Obliczenia wymagają więcej czasu niż w przypadku zmiennych typu Single. Zmienna typu Double wymaga 8 bajtów pamięci. Znakiem deklaracji tego typu jest "#".
Dim Zmienna#
Dim Zmienna As Double
Zmienne typu Currency są przechowywane jako liczby 64-bitowe (8 bajtów) i wyświetlane jako liczba stałoprzecinkowa z 15 miejscami całkowitymi i 4 miejscami po przecinku. Wartości należą do zakresu od -922337203685477,5808 do +922337203685477,5807. Zmienne typu Currency są używane do obliczeń walutowych o wysokiej dokładności. Znakiem deklaracji tego typu jest "@".
Dim Zmienna@
Dim Zmienna As Currency
Zmienne typu String mogą zawierać łańcuchy o maksymalnej długości 65535 znaków. Każdy znak jest przechowywany jako odpowiednia wartość Unicode. Wartości typu String są używane podczas przetwarzania teksów w programach i do tymczasowego przechowywania niedrukowalnych znaków o maksymalnej długości 64 kB. Pamięć wymagana do przechowywania wartości zmiennych typu String zależy od liczby znaków. Znakiem deklaracji tego typu jest "$".
Dim Zmienna$
Dim Zmienna As String
Zmienne typu Boolean przechowują tylko jedną z dwóch wartości: TRUE lub FALSE. Wynikiem wartościowania liczby 0 jest fałsz (FALSE), a wszystkich pozostałych wartości - prawda (TRUE).
Dim Zmienna As Boolean
Zmienne typu Date mogą zawierać tylko wartości daty lub godziny zapisane w formacie wewnętrznym. Wartości przypisywane do zmiennych typu Date za pomocą elementu Dateserial , Datevalue , Timeserial lub Timevalue są automatycznie przekształcane w format wewnętrzny. Zmienne typu Date są przekształcane w zwykłe liczby za pomocą funkcji Day , Month i Year lub funkcji Hour , Minute i Second . Format wewnętrzny umożliwia porównanie wartości daty/godziny poprzez obliczenie różnicy między dwiema liczbami. Zmienne te można deklarować tylko za pomocą słowa kluczowego Date.
Dim Zmienna As Date
Zaraz po zadeklarowaniu zmienna jest automatycznie ustawiana na wartość "pustą". Należy zapamiętać następujące konwencje:
Zmiennym liczbowym zaraz po zadeklarowaniu automatycznie przypisywana jest wartość 0.
Zmiennym typu Date jest wewnętrznie przypisywana wartość 0, co jest równoznaczne z przekształceniem wartości w wartość 0 za pomocą funkcji Day , Month i Year lub funkcji Hour , Minute i Second .
Zmiennym typu String podczas deklarowania przypisywany jest pusty łańcuch ("").
W języku Basic programu Lotus Symphony są obsługiwane jednowymiarowe i wielowymiarowe tablice definiowane na podstawie określonego typu zmiennej. Tablice są używane do edycji list i tabel w programach. Pojedyncze elementy tablicy można adresować za pomocą indeksów liczbowych.
Tablice muszą być deklarowane za pomocą instrukcji Dim.
Przykład | Opis |
---|---|
DIM text$(20) | 21 elementów numerowanych od 0 do 20 |
DIM text$(5,4) | 30 elementów (macierz 6 x 5 elementów) |
DIM text$(5 to 25) | 21 elementów numerowanych od 5 do 25 |
DIM text$(-15 to 5) | 21 elementów (włącznie z 0), ponumerowanych od -15 do 5 |
Zakres indeksów może obejmować zarówno wartości dodatnie, jak i ujemne.
Stałe zawierają stałe wartości. Są one definiowane tylko raz w programie i nie można ich zmieniać:
CONST Nazwa_stałej=Wyrażenie