INSTR 05 DOC


Akademia Techniczno-Rolnicza w Bydgoszczy

Wydział Mechaniczny

Katedra Sterowania i Konstrukcji

Systemy mikrokomputerowe

WSTĘP DO PROGRAMOWANIA

W JĘZYKU VISUAL BASIC

Instrukcja nr 5

Opis działania programu Suma

Program Suma pozwala użytkownikowi wybrać liczbę, a następnie dodaje wszystkie liczby całkowite od 1 do tej liczby. Na przykład jeżeli użytkownik wybrał liczbę 5, program przeprowadzi następujące obliczenia:

1+2+3+4+5 = 15

i wyświetli wynik.

Wizualna implementacja programu Suma

1. Otwórz nowy projekt, zachowaj formę projektu w pliku Suma.frm, plik projektu jako Suma.mak.

2. Na podstawie tabeli zbuduj formę frmSuma.

Obiekt

Własność

Ustawienie

Form

Name

Caption

Height

Left

Top

Width

frmSuma

Suma

3708

1416

1512

6516

Command Button 0x01 graphic

Name

Caption

Height

Left

Top

Width

cmdSuma

&Dodaj

1692

3600

480

2052

Vertical Scroll Bar 0x01 graphic

Name

Height

Left

Max

Min

Top

Value

Width

vsbLiczba

2652

240

500

1

240

1

252

Text Box 0x01 graphic

Name

Alignment

Enabled

Height

Left

MultiLine

Top

Width

Text

txtWynik

2-Center

False

612

600

True

720

2292

(usunąć zawartość)

Command Button 0x01 graphic

Name

Caption

Height

Left

Top

Width

cmdKoniec

&Koniec

372

4080

2400

972

Label 0x01 graphic

Name

Caption

Height

Left

Top

Width

lblLiczba

Wybrana liczba:

372

600

2040

2412

0x08 graphic

Rys.1 Program Suma

Wprowadzanie kodu programu Suma

  1. W części ogólnych deklaracji formy frmSuma wpisz kod:

`Wszystkie zmienne muszą być zadeklarowane

Option Explicit

  1. Do procedury cmdKoniec_Click() formy frmSuma wpisz kod:

Sub cmdKoniec_Click()

End

End Sub

  1. Do procedury cmdSuma_Click() formy frmSuma wpisz kod:

Sub cmdSuma_Click()

Dim I

Dim R

For I = 1 to vsbLiczba.Value Step 1

R = R + I

Next

txtWynik.Text = R

End Sub

Informacja

Procedura cmdSuma_Click() jest wykonywana zawsze, gdy użytkownik kliknie na przycisk Dodaj:

W procedurze deklarowane są dwie zmienne: I oraz R. Następnie w pętli For...Next jest wyliczana suma:

1 + 2 + 3 + .... + vsbLiczba.Value

Początkowo zmienna R ma wartość 0, ponieważ Visual Basic przypisuje wartość 0 w czasie deklaracji. Ostatnia instrukcja procedury uaktualnia cechę Text pola tekstu wartością zmiennej R.

Uwaga:

Blok For...Next jest rodzajem pętli Visual Basica. Następująca pętla wykonuje liczenie od 1 do 100:

For I = 1 to 100 Step 1

txtMojePoleTekstowe.Text = I

Next

Aby wykonać liczenie od 1 do 100 z krokiem 2 (1,3,5,7, ...) można użyć poniższej pętli For...Next:

For I = 1 to 100 Step 2

txtMojePoleTekstowe.Text = I

Next

Pominięcie słowa Step powoduje wykorzystanie standardowego kroku 1 (Step 1). Dwa następujące bloki wykonują tą samą operacje:

For I = 1 to 100 Step 1

txtMojePoleTekstowe.Txt = I

Next I

For I = 1 to 100

txtMojePoleTekstowe.Txt = I

Next I

Można wyjść z pętli For...Next zanim zmienna osiągnie wartość końcową wywołując instrukcję Exit For.

For I = 1 to 1000

txtWynik.Text = I

If I = 500 Then

Exit For

End If

Next

Powyższy kod liczy z krokiem 1 zaczynając od 1. Gdy I równa się 500, pętla For kończy działanie.

  1. Do procedury vsbLiczba_Change() formy frmSuma wpisz kod:

Sub vsbLiczba_Change()

lblLiczba.Caption = „Wybrana liczba: ” + str(vsbLiczba.Value)

End Sub

Informacje

Procedura vsbLiczba_Change() jest wykonywana zawsze, gdy użytkownik zmienia położenie suwaka przewijania. Procedura uaktualnia cechę Text etykiety lblLiczba na wartość pobraną z cechy Value paska przewijania. Pozwala to użytkownikowi wczytać pozycję suwaka. Funkcja Str() kowertuje format zmiennej z cyfrowej na tekstową, co umozliwia dodanie jej do innego łańcucha tekstowego.

  1. Do procedury vsbLiczba_Scroll() formy frmSuma wpisz kod:

Sub vsbLiczba_Scroll()

lblLiczba.Caption = „Wybrana liczba: ” + str(vsbLiczba.Value)

End Sub

Informacje

Procedura vsbLiczba_Scrol() jest wykonywana zawsze, gdy użytkownik przeciąga suwak paska przewijania. Procedura uaktualnia cechę Text etykiety lblLiczba na wartość pobraną z cechy Value paska przewijania.

Uruchomienie programu Suma

  1. Wywołaj program Suma.

  1. Wybierz liczbę, klikając ikony strzałek pionowego paska przewijania lub przeciągając suwak przewijania. W odpowiedzi program wyświetli wybraną liczbę.

  1. Kliknij przycisk Dodaj. W odpowiedzi program wykona obliczenia i wyświetli wynik w polu tekstu.

  1. Zakończ działanie programu klikając przycisk Koniec.

Tworzenie pliku wykonywalnego (Suma.exe)

  1. Wybierz z menu File opcję Make EXE File.

  1. Zapamiętaj plik pod nazwą Suma.exe .

  1. Zakończ działanie Visual Basic wybierając z menu File opcję Exit.

Ćwiczenie końcowe

  1. Zmień program Suma tak, aby zamiast pętli For...Next używał pętli Do While...Loop.

Informacja

Blok Do...Loop jest używany do wykonywania instrukcji do momentu, aż prawdziwy będzie pewien warunek. Następująca instrukcja Do While...Loop liczy od 1 do 1000:

Licznik = 1

Do While Licznik < 1001

Licznik = Licznik + 1

Loop

Zmienna Licznik otrzymuje wartość 1 i zaczyna się pętla Do...Loop. W pierwszej linii pętli sprawdza się, czy zmienna Licznik jest mniejsza niż 1001. Jeśli jest to spełnione, wykonywane są instrukcje pomiędzy linią Do While i Loop. W tym przykładzie jest to pojedyncza instrukcja:

Licznik = Licznik + 1

zwiększająca o 1 wartość zmiennej Licznik.

Następnie program wraca do linijki Do While i ponownie bada wartość zmiennej Licznik. Teraz Licznik jest równy 2, więc znowu wykonywana jest instrukcja pomiędzy liniami Do While i Loop. Ten proces powtarza się, aż Licznik osiągnie wartość 1001. W tym momencie w linii Do While okazuje się, że Licznik nie jest już mniejszy od 1001 i program przechodzi do instrukcji za linijką Loop.

Instrukcje wewnątrz pętli Do While...Loop opisane powyżej mogą być wykonane, albo nie. Na przykład, w następującej pętli instrukcje między liniami Do While oraz Loop nie zostaną nigdy wykonane:

Licznik = 2000

Do While Licznik < 1001

Licznik = Licznik + 1

Loop

W tym przypadku po dojściu programu do linii Do While okazuje się, że Licznik jest równy 2000 i dlatego instrukcja zawarta wewnątrz pętli nie jest wykonywana. Czasami konieczne jest aby program wchodził do pętli co najmniej raz. W takim przypadku należy użyć instrukcji Do...Loop While:

Licznik = 2000

Do

txtMojePoleTekstowe.Text = Licznik

Licznik = Licznik + 1

Loop While Licznik < 1001

Program w każdym przypadku wykonuje instrukcje między liniami Do oraz Loop While. Następnie sprawdza, czy Licznik jest mniejszy od 1001. Jeżeli tak jest program wraca do wykonywania instrukcji wewnątrz pętli. Po stwierdzeniu, że zmienna Licznik nie jest już mniejsza niż 1001 przechodzi do instrukcji za linijką Loop While.

Następujące instrukcje Do...Loop While liczą od 50 do 300.

Licznik =50

Do

Licznik = Licznik + 1

Loop While Licznik < 301

Pętla Do While...Loop może być przerwana przy użyciu instrukcji Exit Do

I = 1

Do While I < 1001

txtWynik.Text = I

I = I + 2

If I > 500 Then

Exit Do

End If

Loop

Powyższa pętla liczy z krokiem 2 począwszy od 1. Gdy I jest większe od 500, Do While...Loop kończy działanie.

  1. Ulepsz program Suma. Dodaj przycisk poleceń. Przycisk powinien mieć następujące parametry: Name - cmdPierwiastek, Caption - &Pierwiastek. Gdy użytkownik kliknie przycisk Pierwiastek, program powinien wyświetlać pierwiastek kwadratowy liczby wybranej na pasku przewijania.

Informacja

Do obliczania pierwiastka kwadratowego z liczby należy wykorzystać funkcję Sqr().

11

7



Wyszukiwarka

Podobne podstrony:
r08 05 doc
prawo 05 DOC
r12 05 doc
r07 05 doc
r13 05 doc
05 (7) DOC
INSTR 07 DOC
INSTR 08 DOC
INSTR 06 DOC
INSTR 01 DOC
05 (6) DOC
205 05 DOC
INSTR 09 DOC
r09 05 doc
WYKŁAD 05 DOC
r14 05 doc
r11 05 doc
r10 05 doc
INSTR 02 DOC

więcej podobnych podstron