Copyright © 2009 Janusz Bonarowski 1
Ćwiczenie VB6.0_Instrukcja cyklu tzw. pętla
Visual Basic dostarcza następujące konstrukcje instrukcji pętli:
Schematyczny zapis Liczba powtórzeń
For...Next powtarzanie pętli określoną liczbę razy Do Until ... Loop
Do...Loop Until
powtarzanie pętli dopóki Warunek = FAŁSZ ang. until oznacza: do czasu, aż, dopóki
Do While
Do...Loop While
powtarzanie pętli dopóki Warunek = PRAWDA
ang. While oznacza: gdy, podczas, podczas gdy, tak długo jak
Składnia
Instrukcja For ... Next
For Licznik = Start To Koniec [Step Krok]
Blok instrukcji Next [Licznik]
Krok może mieć wartość dodatnią lub ujemną. Jeśli Krok jest dodatni Start musi być mniejszy lub równy Koniec – w przeciwnym przypadku Blok instrukcji nie będzie wykonany.
Jeśli Krok jest ujemny - Start musi być większy lub równy Koniec aby Blok instrukcji został wykonany.
W momencie wykonywania instrukcji For...Next Visual Basic wykonuje następujące działania:
1. Przypisuje zmiennej Licznik wartość zmiennej Start.
2. Sprawdza, czy Licznik jest większy od zmiennej Koniec.
(Jeśli Krok jest ujemny sprawdzany jest warunek czy licznik jest mniejszy od wartości zmiennej Koniec)
Jeśli TAK – wychodzi z pętli.
Jeśli NIE – wykonuje Blok instrukcji
3. Zwiększa Licznik o 1 (lub o Krok, jeśli jest podany. Gdy Krok jest ujemny – zmniejsza Licznik).
4. Powtarza punkty 2 i 3.
Z punktu 3 wynika wniosek, że jeśli zakładamy Krok = 1, to możemy go jawnie nie podawać.
Wykonywanie pętli For...Next można przerwać poleceniem Exit For.
Instrukcja Do Until (Warunek)... Loop Do Until (Warunek)
Blok instrukcji wykonywany gdy Warunek = FAŁSZ Loop
Copyright © 2009 Janusz Bonarowski 2 Ponieważ Warunek sprawdzany jest na początku pętli – blok instrukcji może nigdy nie zostać wykonany, gdy na starcie pętli Warunek = Prawda.
Instrukcja Do ... Loop Until (Warunek) Do
Blok instrukcji wykonywany gdy Warunek = FAŁSZ Loop Until (Warunek)
Ponieważ Warunek sprawdzany jest na końcu pętli - wykonanie bloku instrukcji nastąpi 1 raz nawet gdy Warunek = Prawda już na początku wykonywania pętli.
Instrukcja Do While(Warunek)...Loop Do While (Warunek)
Blok instrukcji wykonywany gdy Warunek = PRAWDA Loop
Warunek sprawdzany na początku pętli powoduje, że blok instrukcji może nigdy nie zostać wykonany, gdy już na starcie pętli Warunek = FAŁSZ.
Instrukcja Do...Loop While(Warunek) Do
Blok instrukcji wykonywany gdy Warunek = PRAWDA Loop While (Warunek)
Ponieważ Warunek sprawdzany jest na końcu pętli - wykonanie bloku instrukcji nastąpi 1 raz nawet gdy Warunek = FAŁSZ przy pierwszym wejściu do pętli.
Wszystkie pętle Do...Loop jako wspólną cechę mają to, że nie wiemy ile razy zostanie
wykonany blok instrukcji. Jeśli wiemy ile razy ma być wykonana pętla – stosujemy instrukcję For ... Next.
Wykonywanie pętli Do... można przerwać (opuścić pętle) poleceniem Exit Do.