Teraz zobaczmy co można robić ze zmiennymi po tym jak je zadeklarujemy. Oto kilka przykładów:
#property strict
double A = 50.0; // deklarujemy zmienną A jako liczbę dziesiętną
// i inicjujemy ją wartością 50.0
double B = 2.0; // deklarujemy zmienną B jako liczbę dziesiętną
// i inicjujemy ją wartością 2.0
double C; // po prostu deklarujemy zmienną C
// domyślnie C będzie równe 0.0
void OnStart() // funkcja główna skryptu
{
//---
C = A + B; /* przypisujemy zmiennej C sumę zmiennych
A i B. Teraz C równa się 52.0
Podobnie jak po każdej innej instrukcji
trzeba zapisać średnik */
C = A - B; // odejmowanie, C = 50.0 - 2.0 = 48.0
C = A * B; // mnożenie, C = 50.0 * 2.0 = 100.0
C = A / B; // dzielenie, C = 50.0 / 2.0 = 25.0
C = A + B * A; /* zgodnie z zasadami matematyki najpierw
uzyskamy wartość mnożenia B na A, potem
dodamy do A i przypiszemy wynik zmiennej C
C = 50.0 + 2.0 * 50.0 = 50.0 + 100.0 = 150.0 */
C = A + B / A - B; // C = 50.0 + 2.0 / 50.0 - 2.0 = 50.0 + 0.04 - 2.0 = 48.04
C = (A + B) * A; /* w nawiasach trzeba zamieszczać operacje,
które powinny być wykonane w pierwszej
kolejności. W tym przypadku najpierw
uzyskamy sumę A i B, potem ta suma
zostanie pomnożona na A i przypisana
zmiennej C
C = (50.0 + 2.0) * 50.0 = 52.0 * 50.0 = 2600.0 */
C = (A + B) / (A - B); // C = (50.0 + 2.0) / (50.0 - 2.0) = 52.0 / 48.0 = 1.083333333333330
}
W tym kodzie przed OnStart() utworzyliśmy 3 zmienne A, B i C typu double i od razu A i B przypisaliśmy określone wartości. Następnie, w ciele głównej funkcji skryptu zapisaliśmy działania matematyczne. Po prawej stronie stosując symbole komentarza // oraz /* ... */ opisaliśmy te działania.
Jeśli trzeba przeprowadzić jakieś działanie matematyczne ze zmienną i tej samej zmiennej od razu przypisać wynik, to można postąpić w następujący sposób:
#property strict
int A = 10; // deklarujemy zmienną A jako liczbę całkowitą
// i przypisujemy jej wartość 10
void OnStart() // funkcja główna skryptu
{
//---
A = A + 5; // zwiększamy A o 5 i przypisujemy A wynik, A = 10 + 5 = 15
A += 5; // początkową wartość A zwiększamy o 5, A = 15
A = A - 5; // zmniejszamy A o 5 i przypisujemy A wynik, A = 10 - 5 = 5
A -= 5; // początkową wartość A zmniejszamy o 5, A = 5
A = A * 5; // mnożymy A na 5 i przypisujemy A wynik, A = 10 * 5 = 50
A *= 5; // początkową wartość A mnożymy na 5, A = 50
A = A / 5; // dzielimy A na 5 i przypisujemy A wynik, A = 10 / 5 = 2
A /= 5; // początkową wartość A dzielimy na 5, A = 2
}
Jeśli trzeba zwiększyć lub zmniejszyć tylko o 1, zastosuj następujące zapisy:
#property strict
int A = 10;
void OnStart()
{
//---
A++; // zwiększenie A o 1 (inkrementacja), A = 10 + 1 = 11
A--; // zmniejszenie A o 1 (dekrementacja), A = 10 - 1 = 9
}
W tym przykładzie zapis A++ jest identyczny w swoim działaniu zapisom A = A + 1 oraz A + = 1. Zapis A-- jest identyczny zapisom A = A - 1 oraz A - = 1. W następnym rozdziale pokażę jak można wyświetlić wyniki obliczeń na monitorze.