Ćwiczenie VB3.0 Zmienne, konspekt ogólny

1. Pojęcie zmiennej i typy zmiennych, deklaracje zmiennych Pozycja w Pomocy: Variables - > introduction to

rozdział Representing Words, Numbers, and Values with Variables Zmienna to nazwany obszar pamięci przechowujący pewne dane.

O rodzaju danych przechowywanych w zmiennej decyduje typ zmiennej.

Praca ze zmienną to wykonanie trzech kroków:

1. Zadeklarowanie zmiennej, czyli zdefiniowanie nazwy i typu zmiennej.

2. Nadanie zmiennej wartości – podstawienie pod zmienną.

3. Wykorzystanie zmiennej w programie.

1. Zadeklarowanie zmiennej, czyli zdefiniowanie nazwy i typu zmiennej.

Nazwa zmiennej – dowolny ciąg znaków rozpoczynający się od litery, bez spacji (najlepiej składający się z liter, cyfr i ewentualnie dolnego podkreślenia z wykorzystaniem notacji węgierskiej)

Typy zmiennych (najczęściej wykorzystywane):

Liczbowe – Integer, Single, Long, Double,

Logiczne - Boolean,

Tekstowe - String.

W indeksie pomocy szukaj: data types, summary

Przykład deklaracji zmiennej

Dim intMaxZestaw as Integer

Dim intLiczbaCykli as Integer

lub

Dim intMaxZestaw, LiczbaCykli as Integer

Dim sngSprawnosc as Single

Dim dblMoc as Double

Dim blnCzyOK as Boolean

2. Nadanie zmiennej wartości – podstawienie pod zmienną.

Podczas deklarowania można nadawać zmiennym wartości początkowe: Dim intLiczbaCykli as Long = 0

lub w kodzie programu

sngSprawnosc = 0.987

Uwaga. W kodzie programu wartości liczbowe piszemy z kropką jako separatorem dziesiętnym, bez względu na ustawienia w systemie operacyjnym.

Copyright © 2009 Janusz Bonarowski

1

3. Wykorzystanie zmiennej w programie

X1 = (-B – PD)/(2*A)

2. Funkcje konwersji wartości do wymaganego typu zmiennej, (W Pomocy wpisać: Conversion Functions

Wybrane funkcje konwersji

CDbl(wyrażenie) – Zwraca liczbę typu Double

CInt(wyrażenie) – Zwraca liczbę typu Integer CLng(wyrażenie) – Zwraca liczbę typu Long

CSng(wyrażenie) – Zwraca liczbę typu Single

CStr(wyrażenie) – Zwraca ciąg znaków (ciąg cyfr, napis z cyfr).

Konwersję można także przeprowadzić metodą .Parse

Dim eta as Double

eta = Double. Parse(txtSprawnosc.Text)

Dim sngMasa1 as Single

sngMasa1 = Single.Parse(txtMasa1.Text)

Konwersję można także przeprowadzić metodą .ToString

Dim sngMasa1 as Single

lblWynik.Text = sngMasa1.ToString

3. Hierarchię operatorów algebraicznych

nawiasy

funkcje

potęgowanie

mnożenie, dzielenie

dodawanie, odejmowani

Copyright © 2009 Janusz Bonarowski

2

4. Przestrzeń nazw Math

Np. Obliczenie pola powierzchni koła:

Pole = Math.PI * Promien^2

Sinus kata podawany w stopniach

AlfaStopnie = CDbl(txtAlfa.Text)

AlfaRad = AlfaStopnie * Math.PI / 180

sngWartosc = Math.Sin(AlfaRad)

Pierwiastek

X1 = (-B – Math.Sqrt(Delta))/(2*A)

Rys. 1. Metody

przestrzeni nazw Math

5. Programową obsługę błędów.

Wywołanie funkcji MsgBox w postaci:

MsgBox("Wartość nie może być < 0", _

MsgBoxStyle.Information + _

MsgBoxStyle.OkOnly, _

"Uwaga, błąd danych")

daje efekt jak na rys. 2

Rys. 2. Efekt funkcji MsgBox

Struktura Try…Catch …End Try

Try

a = Single.Parse(Me.TextBox1.Text)

Catch 'ex As Exception 'można zrezygnować

' z obiektu ex

MsgBox("Wartość nie jest liczbą", _

MsgBoxStyle.Information + MsgBoxStyle.OkOnly, _

"Uwaga, błąd danych")

End Try

Copyright © 2009 Janusz Bonarowski

3

Jeśli działanie wiersza

a = Single.Parse(Me.TextBox1.Text)

zakończy się błędem – sterowanie przekazane zostanie do gałęzi Catch i nie zakończy się awarią programu lecz komunikatem jak na rys. 2

Funkcja InStr

Funkcja zwraca pozycję na jakiej w przeglądanym ciągu znaków znajduje się szukany ciąg znaków.

A = InStrt(txtMasa1.Text, ".", CompareMethod.Text) Jeśli wpisaliśmy do txtMasa1.Text wartość z przecinkiem, (a nigdzie nie pojawi się znak kropki) to zmienna A uzyska wartość 0.

Jeśli wpisaliśmy do txtMasa1.Text wartość 12.34 z kropką, to zmienna A uzyska wartość 3

(kropka znajduje się na pozycji 3).

Funkcja IsNumeric

Funkcja zwraca Prawdę, jeśli jej argument tekstowy da się przekonwertować na liczbę. Jeśli argument funkcji nie da się przekonwertować na liczbę – funkcja zwraca Fałsz.

If Not IsNumeric(txtMasa1.Text) Then

MsgBox("Wprowadź liczbę")

Exit Sub

end if

Copyright © 2009 Janusz Bonarowski

4