Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

VB.Net 1. ZMIENE I TYPY 2. OPERATORY 3. SELEKCJE 4. TABLICE

Podobne prezentacje


Prezentacja na temat: "VB.Net 1. ZMIENE I TYPY 2. OPERATORY 3. SELEKCJE 4. TABLICE"— Zapis prezentacji:

1 VB.Net 1. ZMIENE I TYPY 2. OPERATORY 3. SELEKCJE 4. TABLICE
5. REPETYCJE

2 VB.Net STRUKTURY DANYCH: ZMIENNE I TYPY

3 Konwencje nazw zmiennych
Słowa kluczowe oraz nazwy obiektów i klas rozpoczynaj od dużej litery np. Loop, Dim, FileStream Rozpoczynaj nazwę zmiennej od małej litery stosując styl wielbłądzi (camel style) np. dataUrodz lub styl pascalowy np. DataUrodz Nazwę zmiennej rozpoczynaj od 2 lub 3-znakowego skrótu typu danych np. dtDataUrodz, cNazwPrac, intPodatekVAT. Są to tzw. prefiksy węgierskie - od nazwiska węgierskiego inżyniera Microsoftu Charles’a Simonyi

4 Wspólny System Typów (Common Type System)
Typ danych Dopuszczalne wartości Zajętość pamięci Boolean  True lub False (Prawda lub Fałsz) 2 bajty Date Data z przedz: do bajtów Byte Liczba bez znaku od 0 do bajt Short Liczba od do bajty Integer Liczba od bajty do Long Liczba od bajtów do Decimal Liczba ze znakiem złożona max 16 bajtów z 29 cyfr, nie większa niż 79228×1024 Single Liczba od E bajty do E+38 Double Liczba od E bajtów do E+308 Char Ciąg znaków Unicode od 0 do bajty String Ciąg znaków Unicode od 0 do zn. Object Dowolny typ danych

5 Konwencje zapisu zmiennych
Typ zmiennej Prefiks (przedrostek) Przykład Boolean  b bCzyNowyProd Date dt dtDataZatrudn Byte byt bytMiesiac Short sht shtLicznik Integer i lub int iKoty Long l lub lng lPopulacja Decimal dec decWynikBadan Single sng sngCena Double d lub dbl dblDochod Char c cZnak String s lub str sNazwisko

6 Symbole typów danych Typ danych Symbol typu Przykład Boolean  True False Date #23/08/2003# Byte Short S S Integer I lub % 123I Long L lub & 15L Decimal D lub & D Single F lub ! F Double R lub # R Char C ”C”C String ”VB.Net”

7 Deklaracje zmiennych Ogólna postać deklaracji zmiennej:
Dim nazwa_zmiennej As typ_zmiennej np. Dim licznikPowt As Integer Dim wartProd As Single Zmiennym podczas deklaracji można przypisać wartości np. Dim intLiczba As Integer = Dim odpowiedz = False ‘ lub True

8 Inne przykłady deklaracji zmiennych
Dim i As Integer = 21 Dim dToday As Date = Today() Dim dblFloat As Double = Dim dBirthday As Date = #1/1/1995# Dim iCalculate As Integer = i * 5 Dim I, J, X As Integer

9 Formatowanie wartości numerycznych za pomocą metody
Metoda konwersji ToString przypisuje argumentowi łańcuchowemu format danej Znaki specjalne użyte są do zdefiniowania formatu lblGain.Text = mdblGain.ToString("$##,###.##") zmienna metoda ToString argument definiuje sposób formatowania wartości

10 Znaki formatujące (Formatting Placeholders)
(maska) Opis Format cyfrowy. # . Format dziesiętny – określa pozycję dziesiętną , Separator tysięcy % Format procentu - + $ ( ) Znaki wbudowane w łańcuchu znaków

11 Przykłady formatowania
Łańcuch formatu (Maska) Wartość Wartość po sformatowaniu 123.45 ###,###.00 1234.4 1,234.40 $###,###.00 $1,234.40 ###% 0.08 8% ##.00% 8.00% C $ F

12 ZŁOŻENIA (KONKATENACJI)
VB.Net 2. OPERATORY: ARYTMETYCZNE ZŁOŻENIA (KONKATENACJI) RELACJI LOGICZNE

13 Priorytety operatorów
Kategoria Operator Symbol Arytmetyczny  Potęgowanie ^ Arytmetyczny Negacja (minus) - Arytmetyczny Mnożenie oraz dzielenie zmiennoprzec. * / Arytmetyczny Dzielenie całkowite \ Arytmetyczny Reszta z dzielenia Mod Arytmetyczny Dodawanie i odejmowanie Złożenie (Konkatenacja) &, + Relacja (Porównanie) =, <>, <, >, <=, >=, Like, Is Logiczny Nie NOT Logiczny Oraz (Koniunkcja) AND, AndAlso Logiczny Lub (Alternatywa) OR, OrElse

14 3. STRUKTURY STEROWANIA:
VB.Net 3. STRUKTURY STEROWANIA: SELEKCJE

15 Instrukcje warunkowe (If)
If – Then <wersja z blokiem instrukcji> Selekcja if dokonuje ona sprawdzenia podanego warunku i jeżeli jest on prawdziwy (ma wartość TRUE) wykonywany jest blok instrukcji. W przypadku gdy warunek jest fałszywy blok ten jest omijany. Składnia: If Wyrażenie logiczne Then    Blok instrukcji VB wykonywany gdy Wyrażenie logiczne jest prawdziwe End If

16 If – Then <wersja z uproszczoną składnią instrukcji>
Uproszczona składnia selekcji If: If Wyrażenie logiczne Then Instrukcja1 [: Instrukcja2 [: ... [: InstrukcjaN ]...]] Uproszczoną składnię selekcji If można użyć, gdy ma być wykonana tylko jedna instrukcja (lub kilka krótkich instrukcji oddzielonych od siebie dwukropkami), a nie cały blok. Nawiasy [] oznaczają, że wyrażenia te są opcjonalne, tzn., że wymagany jest tylko jedna instrukcja za Then, a pozostałe mogą lecz nie muszą występować.

17 Przykład użycia selekcji If: If intZysk > 1200 Then    intPodatek = 20    intWiadomosc = MsgBox("Zapłacisz większy podatek") End If Zapis w postaci uproszczonej: If intZysk>1200 Then intPodatek = 20 : intWiadomosc = MsgBox("Zapłacisz większy podatek") Zapisywanie wyrażeń logicznych w nawiasach nie jest konieczne, jednak poprawia czytelność zapisu, szczególnie, jeżeli sprawdzany warunek jest rozbudowany. Zapis uproszczony jest przydatny przy konieczności wykonania małej liczby krótkich instrukcji, jednak dla zachowania przejrzystości programu zaleca się stosowanie pełnej wersji zapisu.

18 If - Then - Else W przypadku gdy wyrażenie logiczne ma wartość TRUE wykonuje ona blok rozkazów zawarty między Then i Else, gdy zaś warunek ma wartość FALSE wykonuje blok rozkazów zawarty między Else i End If. Składnia: If Wyrażenie logiczne Then    Blok instrukcji wykonywany gdy Wyr.log. jest prawdą Else    Blok instrukcji wykonywany gdy Wyr.log jest fałszem End If Uproszczona składnia instrukcji If..Else: If Wyrażenie logiczne Then Instrukcja1a [: InstrukcjaA1 [: ... [: InstrukcjaAn ]...]] Else InstrukcjaB1 [: [: ... [: InstrukcjaBm ]...]]

19 Przykład użycia selekcji If – Then - Else: If (intZysk>1200) Then    intPodatek=20    intWiadomosc=MsgBox("Musisz zapłacić większy podatek") Else    intPodatek=7    intWiadomosc=MsgBox("Możesz zapłacić mniejszy podatek"") End If Zapis w formie uproszczonej (nie zaleca się używać !): If (intZysk>1200) Then intPodatek=20 : intWiadomosc=MsgBox("Zapłacisz większy podatek") Else intPodatek=7 : intWiadomosc=MsgBox("Możesz zapłacić mniejszy podatek")

20 If – Then – ElseIf Możliwość zagnieżdżania selekcji If..Else wymusiło powstanie konstrukcji If...ElseIf. Pozwala ona na kolejne sprawdzanie wielu wyrażeń logicznych. Składnia: If Wyrażenie logiczne1 Then    Blok instrukcji wykonywany gdy Wyr.log. jest prawdziwe ElseIf Wyrażenie logiczne2 Then    Blok instrukcji wykonywany gdy Wyr.log1 nie jest prawdą a Wyrażenie logiczne2 jest prawdą     ... [ElseIf Wyrażenie logiczneN Then     Blok instrukcji wykonywany gdy Wyr.log. od 1 do (N-1) nie są prawdą a Wyr.logiczneN jest prawdą    ]...]  [Else     Blok instrukcji wykonywany gdy żadne z Wyr.log. od 1 do N nie jest prawdą  ] End If

21 Przykład użycia instrukcji If – Then – ElseIf
If (intZysk>1200) Then    intPodatek=20    intWiadomosc=MsgBox("Musisz zapłacić duży podatek") ElseIf (intZysk>700) Then     intPodatek=16     intWiadomosc=MsgBox("Musisz zapłacić 16% podatku")   ElseIf (intZysk>400) Then       intPodatek=7      intWiadomosc=MsgBox("Musisz zapłacić 7% podatku")    ElseIf (intZysk>200) Then       intPodatek=4       intWiadomosc=MsgBox("Masz mało ale i tak płać!")     ElseIf (blnPracuje=False) Then        intWiadomosc=MsgBox("Chyba ktoś Cię utrzymuje") Else    intPodatek=0    intWiadomosc=MsgBox("Z czego Ty żyjesz?") End If

22 Omówienie przykładu: W pierwszym wyrażeniu logicznym sprawdzana jest wartość zmiennej intZysk. Jeżeli jest ona większa od 1200 to zmiennej intPodatek przypisywana jest wartość 20 i wyświetlane okno z komunikatem. Jeżeli jest mniejsza lub równa 1200 to sprawdzane jest kolejne wyr.logiczne (intZysk>700). Jeżeli wartość intZysk jest większa od 700, czyli znajduje się w przedziale (700,1200>, to zmiennej intPodatek przypisywana jest wartość 16 i wyświetlane jest okno z komunikatem. Jeżeli jest mniejsza lub równa 700 sprawdzany jest kolejne wyrażenie logiczne. Jeżeli po sprawdzeniu kolejnych wyrażeń okaże się że wartość zmiennej intZysk jest mniejsza lub równa 200, sprawdzana jest wartość zmiennej blnPracuje. Jeżeli jej wartością jest False to podane wyrażenie logiczne blnPracuje=False jest prawdziwe i przyjmuje wartość TRUE oraz wyświetlany jest komunikat ("Chyba ktoś Cię utrzymuje") i selekcja kończy działanie. Gdy jednak żaden z wyr.logicznych selekcji nie został spełniony to wykonywany jest blok instrukcji za Else. Zmiennej intPodatek przypisywana jest wartość 0 i wyświetlane jest okno komunikatu. Selekcja If – Then – ElseIf może sprawdzać wyrażenia logiczne dla różnych zmiennych (dla zmiennej blnPracuje oraz intZysk)

23 Instrukcja wyboru (Select - Case)
Select Case zmienna Case wyrażenie_logiczne_1 Ciąg instrukcji 1 Case wyrażenie_logiczne_2 Ciąg instrukcji 2 Case Else Ciąg instrukcji 3 End Select

24 Select Case Jest to selekcja, która zastępuje zagnieżdżone selekcje If - ElseIf, gdy konieczne jest wybieranie pomiędzy wieloma dostępnymi opcjami. Select Case sprawdza wyrażenia i wybiera jeden odpowiedni blok instrukcji. Składnia: Select Case Wyrażenie  Case Wartość1     Blok instrukcji wykonywany gdy Wyrażenie=Wartość1  Case Wartość2     Blok instrukcji wykonywany gdy Wyrażenie=Wartość2  ...   [Case WartośćN     Blok instrukcji wykonywany gdy Wyrażenie=WartośćN   ]...]   [Case Else     Blok instrukcji wykonywany gdy Wyrażenie jest różne od wszystkich Wartości od 1 do N] End Select

25 Przykład użycia selekcji Select Case: Select Case intZysk  Case 1200, 1000    intPodatek=20    intWiadomosc=MsgBox("Musisz zapłacić olbrzymi podatek")  Case 700    intPodatek=16    intWiadomosc=MsgBox("Musisz zapłacić 16% podatku")  Case intInnyZysk    intPodatek=7    intWiadomosc=MsgBox("Musisz zapłacić 7% podatku")  Case ( )    intPodatek=4    intWiadomosc=MsgBox("Masz mało ale i tak płać!")  Case Else    intPodatek=0    intWiadomosc=MsgBox("Masz inny zysk") End Select

26 Select Case Is Selekcja Select Case Is jako wartości do porównania z wyrażeniem może używać tylko relacji. Składnia: Select Case Wyrażenie  Case Is Relacja1    Blok instrukcji wykonywany gdy Relacja1 z Wyrażeniem jest TRUE  [Case Is Relacja2    Blok instrukcji wykonywany gdy Relacja3 z Wyrażeniem jest TRUE  ...   [Case Is RelacjaN    Blok instrukcji wykonywany gdy Relacja4 z Wyrażeniem jest TRUE   ]...]  [Case Else    Blok instrukcji wykonywany gdy wszystkie podane Relacje z Wyrażeniem jest FALSE] End Select

27 Przykład użycia selekcji Select Case Is: Select Case intZysk  Case Is>1200    intPodatek=20    intWiadomosc=MsgBox("Musisz zapłacić olbrzymi podatek")  Case Is>700    intPodatek=16    intWiadomosc=MsgBox("Musisz zapłacić 16% podatku")  Case Is>=intInnyZysk, Is>=400    intPodatek=7    intWiadomosc=MsgBox("Musisz zapłacić 7% podatku")  Case Is <( )    intPodatek=4    intWiadomosc=MsgBox("Z czego Ty żyjesz?!")  Case Else    intPodatek=0    intWiadomosc=MsgBox("Masz mało ale i tak płać.") End Select

28 Select Case To Selekcja Select Case To jako wartości do porównania z wyrażeniem może używać tylko przedziałów. Składnia: Select Case Wyrażenie  Case Wartość1a To Wartość1b    Blok instrukcji wykonywany gdy Wyrażenie  <Wartość1a, Wartość1b>  Case Wartość2a To Wartość2b    Blok instrukcji wykonywany gdy Wyrażenie  <Wartość2a, Wartość2b>   ...   [Case WartośćNa To WartośćNb    Blok instrukcji wykonywany gdy Wyrażenie  <WartośćNa, WartośćNb>   ]...]  [Case Else    Blok instrukcji wykonywany gdy Wyrażenie nie należy do żadnego podanego przedziału] End Select

29 Przykład użycia selekcji Select Case To: Select Case intZysk  Case 700 To 1200    intPodatek=20    intWiadomosc=MsgBox("Musisz zapłacić duży podatek")  Case intInnyZysk To 700    intPodatek=16    intWiadomosc=MsgBox("Musisz zapłacić 16% podatku")  Case 0 To ( ), 250 To 300    intPodatek=0    intWiadomosc=MsgBox("Z czego Ty żyjesz?!")  Case Else    intPodatek=4    intWiadomosc=MsgBox("Masz mało ale i tak płać.") End Select

30 Przykład połączenia Select Case, Select Case Is, Select Case To (1)
Select Case intZysk  Case 700 To 1200    intPodatek=20    intWiadomosc=MsgBox("Musisz zapłacić duży podatek")  Case intInnyZysk    intPodatek=16    intWiadomosc=MsgBox("To chyba nie tak wiele")  Case Is<( )    intPodatek=0    intWiadomosc=MsgBox("Z czego Ty żyjesz?!")  Case Is>2000, 2500 To 3000, 5000    intWiadomosc=MsgBox("Nieźle!")  Case Else    intPodatek=4    intWiadomosc=MsgBox("Twój zysk jest między 200 a 700 ale nie" & intInnyZysk) End Select

31 Opis = ”Starszy maluch” Case 10 To 14 Opis = ”Podlotek” Case Else
Przykład połączenia Select Case, Select Case Is, Select Case To (2) Select Case liczbaLat Case < 1 Opis = ”Niemowlę” Case 1 To 7 Opis = ”Maluch” Case 8, 9 Opis = ”Starszy maluch” Case 10 To 14 Opis = ”Podlotek” Case Else Opis = ”Jak go nazwać ?” End Select

32 VB.Net 4. STRUKTURY DANYCH: TABLICE

33 Deklaracja tablic Ogólna postać deklaracji tablicy:
Dim nazwa_tablicy(wymiary) As typ_zmiennych np. Dim Prostopadloscian(7,4,9) As Integer Dim wartoscProdukcji(5) As Single Tablicom podczas deklaracji można przypisać wartości np. Dim strRozmiar(1) As String = {”Mały”, ”Duży”} Pierwszy element tablicy ma zawsze wartość równą zeru.

34 W VB.Net numer wymiaru tablicy zawsze rozpoczyna się od zera.
Tablice deklaruje się tak samo jak zmienne podając: Nazwę tablicy. Typ danych. Liczbę wymiarów. Tablice, które zawsze zawierają stałą liczbę elementów w każdym wymiarze nazywa się tablicami o stałej wielkości. Tablice o zmiennej liczbie elementów nazywa się tablicami dynamicznymi. Składnia tablicy o stałej wielkości: Dim NazwaTabl(IndWym1, IndWym2, …, IndWymN) As TypDanych Funkcją UBound(NazwaTabl) sprawdza się górną granicę tablicy, czyli największy indeks.

35 Przykład: Deklaracja tablicy postaci: Dim Wyniki(1,7) As Integer spowoduje zarezerwowanie miejsca w pamięci na tą tablicę. Wygląd miejsca po zadeklarowaniu tablicy Wyniki: 9 1 Polecenie Wyniki(0,4)=9 spowoduje wprowadzenie liczby 9 do elementu stojącego na przecięciu zerowego numeru wiersza i czwartego elementu kolumny.

36 Tablice można deklarować i inicjować w jednej deklaracji-poleceniu:
Dim Tablica() As Integer = {5,10, 15, 20} Należy zwrócić uwagę na nawiasy klamrowe(!). Przykład wykorzystania funkcji UBound: Dim Temp(6) As Single Dim Napis, Tytul As String Napis = ”Podaj najwyższą dzienną temperaturę ” Tytul= ”Temperatura” Dim i As Short For i=0 To UBound(Temp) Tytul = ”Dzień ” & (i+1) Temp(i) = InputBox(Napis, Tytul) Next

37 Tablice dynamiczne: Wielkość tablicy dynamicznej określa użytkownik programu lub algorytm programu wyznacza ją na podstawie pewnych warunków. W tym celu stosuje się polecenie ReDim. Przykład: Dim Temp() As Single Dim Napis, Tytul As String Napis = ”Podaj najwyższą dzienną temperaturę ” Dim i As Short Dni = InputBox(”Ile dni ?”, ”Utwórz tablicę”) If Dni > 0 Then ReDim Temp(Dni – 1) For i=0 To UBound(Temp) Tytul = ”Dzień ” & (i+1) Temp(i) = InputBox(Napis, Tytul) Next ReDim Preserve Temp(10)

38 5. STRUKTURY STEROWANIA:
VB.Net 5. STRUKTURY STEROWANIA: REPETYCJE

39 Repetycja (1): Do - Loop Do ciąg instrukcji Loop
Jest to pętla nieskończona (!) Wyjście z pętli wykonuje się po wprowadzeniu instrukcji: Exit Do

40 Repetycja (2): Do While - Loop
Repetycja (3): While – End While Do While wyrażenie logiczne ciąg instrukcji Loop While wyrażenie logiczne ciąg instrukcji End While Ciąg instrukcji może nie zostać wykonany ani razu, jeżeli początkowa wartość wyrażenia logicznego przyjmie wartość logiczną False.

41 Do While ... Loop Repetycja typu Do While najczęściej występuje w VB.Net. Wymaga ona zastosowania wyrażenia logicznego. Wykorzystuje do tego celu operatory relacji. Repetycja ta jest ograniczona słowami kluczowymi Do While i Loop. Blok instrukcji jest wykonywany tak długo jak długo podane wyrażenie logiczne jest prawdziwe. Ważne jest, aby w bloku instrukcji repetycji umieścić instrukcje, które doprowadzą do tego, aby wartość wyrażenia logicznego stała się fałszem. W przeciwnym razie pętla się nie zakończy. Składnia: Do While (Wyrażenie logiczne)    Blok instrukcji jest wykonywany dopóki Wyrażenie logiczne jest prawdą Loop Jeżeli wyrażenie logiczne jest fałszem już na samym początku przed wykonaniem repetycji, to blok instrukcji nie zostanie wykonany ani razu.

42 Przykład użycia repetycji Do While: intLiczba = 0 Do While intLiczba < 100    intLiczba = InputBox("Wpisz liczbę:") Loop Zmiennej intLiczba przypisywana jest wartość 0. Sprawdzany jest warunek repetycji i ponieważ jest on prawdziwy (0<100) wykonywany jest blok instrukcji. W bloku repetycji pobierana jest od użytkownika liczba, która jest podstawiana pod zmienną intLiczba. Repetycja kontynuuje swoje działanie do czasu, kiedy użytkownik wprowadzi liczbę większą lub równą 100. Wtedy wyrażenie logiczne stanie się fałszem i repetycja zakończy swoje działanie.

43 Repetycja (4): Do - Loop While
ciąg instrukcji Loop While wyrażenie logiczne Ciąg instrukcji zostanie wykonany przynajmniej jeden raz

44 Do...Loop While Blok instrukcji jest wykonywany tak długo jak długo wyrażenie logiczne jest prawdą. Ważne jest, aby w bloku instrukcji repetycji umieścić instrukcje, które doprowadzą do tego, żeby wartość wyrażenia logicznego stała się fałszem. W przeciwnym razie pętla się nie zakończy. W przeciwieństwie do repetycji Do While Wyrażenie logiczne umieszczone jest na końcu repetycji i jest sprawdzane po wykonaniu bloku instrukcji. Składnia: Do Blok instrukcji jest wykonywany dopóki Wyrażenie logiczne jest prawdziwe Loop While (Wyrażenie logiczne) Charakterystyczne dla pętli Do While jest to, że Blok instrukcji wykona się na pewno przynajmniej raz.

45 I. Przykład użycia repetycji Do
I. Przykład użycia repetycji Do...Loop While: Do    intLiczba = InputBox("Wpisz liczbę:") Loop While intLiczba<100 W bloku repetycji pobierana jest od użytkownika liczba, która jest podstawiana pod zmienną intLiczba. Repetycja kontynuuje swoje działanie do czasu, kiedy użytkownik wprowadzi liczbę większą lub równą 100. Wtedy wyrażenie logiczne stanie się fałszywe i repetycja zakończy swoje działanie.

46 II. Przykład użycia repetycji Do...Loop While: Dim Pierwiastek As Single
Dim strLiczba As String Dim Napis1 As String = ”Pierwiastkowanie:" Dim Napis2 As String = ”Twoja liczba:" Do strLiczba = InputBox(Napis2, Napis1) If strLiczba <> "" And IsNumeric(strLiczba) Then Pierwiastek = Sqrt(CSng(strLiczba)) MsgBox(Pierwiastek, ”Wynik:") End If Loop While strLiczba <> ""

47 Repetycja (5): Do Until - Loop
Do Until wyrażenie logiczne ciąg instrukcji Loop Ciąg instrukcji będzie wykonywany, dopóki wartość wyrażenia logicznego będzie miała wartość logiczną False. Inaczej mówiąc: ciąg instrukcji będzie wykonywany aż do spełnienia warunku.

48 Do Until … Loop Jest repetycją podobną do Do While. Jedyna różnica polega na tym, że repetycja Do While wykonuje zawarty w niej blok rozkazów tak długo, jak długo podane wyrażenie logiczne jest fałszem. Składnia: Do Until Wyrażenie logiczne    Blok instrukcji jest wykonywany gdy Wyrażenie logiczne jest fałszem Loop Charakterystyczne dla repetycji Do Until, podobnie jak Do While, jest to, że blok instrukcji może nie zostać wykonany ani razu.

49 Przykład użycia repetycji Do Until … Loop: intLiczba = 0 Do Until intLiczba > 100    intLiczba = InputBox("Wpisz liczbę:") Loop Repetycja kontynuuje swoje działanie do czasu, kiedy użytkownik wprowadzi liczbę mniejszą lub równą 100. Wtedy wyrażenie logiczne stanie się prawdą i repetycja zakończy swoje działanie.

50 Repetycja (6): Do - Loop Until
ciąg instrukcji Loop Until wyrażenie logiczne Ciąg instrukcji będzie wykonywany, dopóki wartość wyrażenia logicznego będzie miała wartość logiczną False. Inaczej mówiąc: ciąg instrukcji będzie wykonywany aż do spełnienia warunku.

51 Do...Loop Until Jest inną formą repetycji Do Until. Blok instrukcji jest wykonywany tak długo, jak długo podane wyrażenie logiczne jest fałszem. W przeciwieństwie do repetycji Do Until Wyrażenie logiczne umieszczone jest na końcu repetycji i jest ono sprawdzane po wykonaniu bloku instrukcji. Składnia: Do    Blok instrukcji jest wykonywany gdy Wyrażenie logiczne jest fałszem Loop Until Wyrażenie logiczne Charakterystyczne dla repetycji Do Until jest to, że blok instrukcji wykona się na pewno przynajmniej raz

52 Przykład użycia repetycji Do
Przykład użycia repetycji Do...Loop Until: Do    intLiczba = InputBox("Wpisz liczbę:") Loop Until intLiczba < 100 Repetycja kontynuuje swoje działanie do czasu, kiedy użytkownik wprowadzi liczbę mniejszą lub równą 100. Wtedy wyrażenie logiczne stanie się prawdą i repetycja zakończy swoje działanie.

53 Exit Do Powoduje przejście do instrukcji znajdującej się bezpośrednio za repetycją. Przykład: W przypadku gdyby wartości zmiennych intLicznik i intStala były takie same, wygenerowany zostałby błąd dzielenia przez 0. Stąd konieczne jest zabezpieczenie, które kończy działanie pętli, gdy wartości te będą sobie równe. Do intLiczba = InputBox("Podaj liczbę:") if (intLiczba = intStala) Then Exit Do End If     sngWynik = 1/(intStala - intLiczba)     intWiadomosc = MsgBox(sngWynik) Loop While intLiczba > 0

54 Repetycja (7): For - Next
For zmienna = w.pocz To w.końc Step krok ciąg instrukcji Next Dim licznik, suma As Short Dim Wektor(10) As Short For licznik = 10 To 0 Step -1 Suma = Suma + Wektor(licznik) Next

55 For ... Next Pozwala ona na wielokrotne powtarzanie bloku instrukcji ściśle określoną ilość razy (w przeciwieństwie do repetycji typu Do). Składnia: For ZmiennaLicznik = WartośćPoczątkowa To WartośćKońcowa [Step WartośćKroku]    Blok instrukcji VB wykonywany jest, gdy ZmiennaLicznik <= WartośćKońcowa (jeżeli WartośćKroku jest dodatnia), lub gdy ZmiennaLicznik>= WartośćKońcowa (gdy WartośćKroku jest ujemna) Next [ZmiennaLicznik] Wyrażenia w nawiasach [] są opcjonalne i nie muszą występować w repetycji. W przypadku, gdy pominięta zostanie część rozkazu określająca WartośćKroku, VB.Net przyjmie domyślną WartośćKroku=1. Wpisywanie ZmiennejLicznik za słowem Next nie jest konieczne, jednak poprawia czytelność i analizę zapisu, szczególnie przy zagnieżdżonych repetycjach For.

56 Przykład użycia repetycji For: intSuma = 0 For intLicznik = 2 To 100 Step 2    intSuma = intSuma + intLicznik Next intLicznik W zmiennej intSuma będzie suma wszystkich liczb parzystych od 0 do 100.

57 Exit For Powoduje przejście do instrukcji znajdującej się bezpośrednio za repetycją (za Next [ZmiennaLicznik]). Przykład: Istota funkcjonowania instrukcji Exit For jest podobna do zasady funkcjonowania instrukcji Exit Do. For intLicznik = 1 To if (intLiczba = intLicznik) Then Exit For End If sngWynik = 1 / (intLicznik - intLiczba) intWiadomosc = MsgBox(sngWynik) Next intLicznik

58 Zestawienie rodzajów repetycji w VB.Net
(1) Do ~~ Loop (2) Do While (wyr.log) ~~ Loop (3) While (wyr.log) ~~ End While (4) Do ~~ Loop While (wyr.log) (5) Do Until (wyr.log) ~~ Loop (6) Do ~~ Loop Until (wyr.log) (7) For ~~ Next Wyjścia z pętli: Exit Do (1,2,4,5,6) Exit While (3) Exit For (7)

59 For zm = w.p To w.k Step krok instrukcje Next
Pętla strukturalna Do <True> instrukcje Loop Początek Do While warunek instrukcje Loop warunek T instrukcje N While warunek instrukcje End While Koniec For zm = w.p To w.k Step krok instrukcje Next

60 Do instrukcje Loop Until warunek Pętla strukturalna Początek
Koniec

61 Do instrukcje Loop While warunek Początek instrukcje T warunek N
Koniec

62 Do Until warunek instrukcje Loop Początek N warunek instrukcje T
Koniec


Pobierz ppt "VB.Net 1. ZMIENE I TYPY 2. OPERATORY 3. SELEKCJE 4. TABLICE"

Podobne prezentacje


Reklamy Google