Pętle instrukcje powtórzeo

Podobne dokumenty
Instrukcje cykliczne (pętle) WHILE...END WHILE

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Pętle. Programowanie komputerowe

Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)

Instrukcje pętli przykłady. Odgadywanie hasła. 1) Program pyta o hasło i podaje adres, gdy hasło poprawne lub komunikat o błędnym haśle.

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Programowanie w Turbo Pascal

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

Visual Basic for Applications. Wstęp

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony.

Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki

Visual Basic for Application (VBA)

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Instrukcje sterujące. Programowanie komputerowe

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

LibreOffice Calc VBA

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe

Pętla for. Wynik działania programu:

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

Visual Basic for Application (VBA)

Konstrukcje warunkowe Pętle

Technologia informacyjna programowanie Janusz Uriasz

do instrukcja while (wyrażenie);

Visual Basic for Application (VBA)

WHILE (wyrażenie) instrukcja;

Wprowadzenie do programowania w VBA

Podstawy Programowania Podstawowa składnia języka C++

Wstęp do programowania

WHILE (wyrażenie) instrukcja;

Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]

Język C część 2. Podejmowanie decyzji w programie. if else. switch

Pętle. Dodał Administrator niedziela, 14 marzec :27

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].

Jak zawsze wyjdziemy od terminologii. While oznacza dopóki, podczas gdy. Pętla while jest

Lekcja 3: Pierwsze kroki z Pythonem. Pętle

Podstawy Programowania C++

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 1. Programowanie komputerowe

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

Plik->Opcje->Zakladka Główne->Dostosuj Wstążkę Zaznaczamy kwadracik Developer na liscie po prawej stronie. Klikamy OK.

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja

Podstawy Informatyki Visual Basic w WSH

Java Podstawy. Michał Bereta

Algorytmy i struktury danych

Liczby losowe i pętla while w języku Python

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

Automatyzacja pracy w AutoCAD

Bloki anonimowe w PL/SQL

INSTRUKCJA SKOKU GOTO

Maxima i Visual Basic w Excelu

for (inicjacja_warunkow_poczatkowych; wyrazenie_warunkowe; wyrazenie_zwiekszajace) { blok instrukcji; }

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk

Wstęp do programowania

Wstęp do programowania

Algorytmika i Programowanie VBA 1 - podstawy

Wstęp do programowania

Do obiektów nie odwołujemy się bezpośrednio, tylko przez ich atrybuty i metody. Obiekt.identyfikator[.identyfikator]

Język C, instrukcje sterujące (laboratorium)

Instrukcje sterujące. wer. 11 z drobnymi modyfikacjami! Wojciech Myszka :53:

7. Pętle for. Przykłady

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

1. JEŻELI - funkcja służąca do testowania warunków logicznych. JEŻELI(warunek_logiczny; wartośd_dla_prawdy; wartośd_dla_fałszu)

Pętle. for, while, do... while, foreach. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.

for (inicjacja_warunkow_poczatkowych(końcowych); wyrazenie_warunkowe; wyrazenie_zwiekszajace(zmniejszające)) { blok instrukcji; }

Opis zagadnieo 1-3. Iteracja, rekurencja i ich realizacja

Cw.12 JAVAScript w dokumentach HTML

Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

BHP JĘZYK C - INSTRUKCJE ITERACYJNE

Podstawy programowania obiektowego

Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal

Język C zajęcia nr 5

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja cz. 1

lekcja 8a Gry komputerowe MasterMind

Struktura pliku projektu Console Application

Część XV C++ Ćwiczenie 1

Utworzenie funkcji użytkownika w Visual Basic

W 5_2 Typy języków programowania sterowników PLC (zdefiniowane w IEC-61131) - języki graficzne (LD, FBD); języki tekstowe (ST, IL).

1 Wielokrotne powtarzanie tych samych operacji

System operacyjny Linux

Warunki logiczne instrukcja if

JAVAScript w dokumentach HTML - przypomnienie

KURS C/C++ WYKŁAD 2. char znak; znak = a ; Program 2 #include<stdio.h> void main() { char znak; while( (znak = getchar() )!= t ) putchar(znak); }

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.

4. Funkcje. Przykłady

Laboratorium 2: Pętle i instrukcje warunkowe. mgr inż. Leszek Ciopiński dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

Programowanie komputerowe. Zajęcia 1

Podstawy programowania skrót z wykładów:

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

Wprowadzenie komentarzy do programu

1 Podstawy c++ w pigułce.

Visual Basic dla AutoCAD

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

Każde wykonanie bloku instrukcji nazywamy pojedynczym przebiegiem lub iteracją pętli.

Wstęp do programowania

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

1 Podstawy c++ w pigułce.

Dynamiczne przetwarzanie stron. dr Beata Kuźmińska-Sołśnia

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst.

Transkrypt:

Pętle instrukcje powtórzeo Pętle - zbiór instrukcji, które należy wykonad wielokrotnie. Program dyktuje: - ile razy pętla ta wykona zawarty w niej blok instrukcji - jakie mają byd warunki zakooczenia jej działania.

Rodzaje instrukcji pętli w VBA W Visual Basic istnieje kilka rodzajów pętli. Do While Loop Do Loop While Do Until Loop Do Loop Until For Do Next Do przerwania działania pętli służą instrukcje: Exit Do Exit For

Rodzaje instrukcji pętli w VBA Pętla typu Do While wykonuje zawarty w niej blok instrukcji dopóki wyrażenie porównania jest prawdziwe. Pętla typu Do Until kontynuuje swoje działanie tak długo, jak długo podany warunek jest fałszywy. Pętla For wykonuje swoje działanie dopóki zmienna o podanej wartości początkowej nie osiągnie podanej wartości koocowej. Ta pętla jest najczęściej wykorzystywana, gdy znana jest wymagana liczba powtórzeo.

pętle o znanej liczbie powtórzeo For o nieznanej liczbie powtórzeo Do While Do Until

Pętla typu Do While Wymaga zastosowania wyrażenia porównania. Wykorzystuje do tego celu operatory porównania. Jest ograniczona słowami kluczowymi Do i Loop. W ciele pętli może znajdowad się jedna instrukcja lub cały blok instrukcji VB. Blok ten jest wykonywany tak długo jak długo podany warunek jest prawdziwy.

Pętla typu Do While Ważne: w ciele pętli muszą znaleźd się instrukcje, które sprawią, że podany warunek kiedyś stanie się fałszywy! W przeciwnym razie pętla się nie zakooczy! Składnia instrukcji Do While: Do While (Warunek) Blok instrukcji VB wykonywany gdy Warunek jest prawdziwy Loop

Pętla typu Do While Jeżeli warunek jest fałszywy już na samym początku przed wykonaniem pętli, to blok instrukcji w ciele pętli nie zostanie wykonany ani razu. Nieco inaczej działa pętla Do...Loop While, której ciało jest zawsze wykonywane przynajmniej jeden raz. Najczęściej w Warunku pętli wykorzystywana jest jakaś zmienna. Wartośd tej zmiennej w ciele pętli musi się zmieniad, aby doprowadzid do fałszywości Warunku i zakooczyd działanie pętli.

Przykład 1: Fragment programu żąda wczytania danych z określonego zakresu Sub blokowanie_danych() liczba = 0 Do While liczba < 1 Or liczba > 100 podczas, gdy liczba wczytywana jest spoza żądanego przedziału liczba = InputBox("Podaj liczbę z przedziału 1..100") Loop End Sub Uwaga! Taki fragment umieszcza się często na początku programu, żeby wymusid wczytanie odpowiednich danych

Przykład 2: program oblicza n-tą sumę szeregu: Sub Suma_While() Dim n As Byte Dim su As Single su = 0 inicjowanie zmiennych li = 1 mia = 1 i = 1 n = InputBox("Ile wyrazów dodad? ") Do While i <= n początek pętli su = su + li / mia li = li + 1 mia = mia + 2 i = i + 1 zwiększanie licznika dodanych wyrazów sumy; bez tego pętla nieskooczona Loop MsgBox "Suma szeregu dla " & n & " wynosi " & su End Sub su 0 1 1+2/3 1+2/3+3/5 =1+2/3+3/5+4/7 li 1 2 3 4 5 mia 1 3 5 7 9 i 1 2 3 4 5 n=4

Przykład 3: symulacja rzutu kostką Sub Rzut_kostką() Randomize procedura ta powoduje, że fcja losowania, użyta w tym programie, będzie generowad zbiór liczb rzeczywiście losowych; należy ją wywoład tylko raz, przed użyciem fcji losowania ile_oczek = Int(Rnd * 6) + 1 fcja Rnd, bez parametru, losuje liczbę rzeczywistą z przedziału <0,1) fcja Int zwraca częśd całkowitą podanej liczby; zaokrągla ją do najbliższej liczby całkowitej, mniejszej od podanej liczby MsgBox "Wyrzuciłeś " & ile_oczek i = 1 Do ile_oczek = Int(Rnd * 6) + 1 i = i + 1 MsgBox "Wyrzuciłeś " & ile_oczek Loop While ile_oczek <> 6 MsgBox "Szóstka padła po " & i - 1 & " rzutach" End Sub

Pętla typu Do Until Pętla Do Until wykonuje zawarty w niej blok rozkazów tak długo, jak długo podany warunek jest fałszywy. Wymaga ona zastosowania wyrażenia porównania. Wykorzystuje do tego celu operatory porównania. Pętla te jest ograniczona słowami kluczowymi Do i Loop. W ciele pętli może znajdowad się jedna instrukcja lub cały blok instrukcji VB.

Pętla typu Do Until Ważne: w ciele pętli muszą znaleźd się instrukcje, które doprowadzą do tego, że podany warunek kiedyś stanie się prawdziwy. W przeciwnym razie pętla się nie zakooczy! Składnia instrukcji Do Until: Do Until (Warunek) Blok instrukcji VB wykonywany gdy Warunek jest fałszywy Loop

Pętla typu Do Until Jeżeli warunek jest prawdziwy już na samym początku przed wykonaniem pętli, to blok instrukcji w ciele pętli nie zostanie wykonany ani razu. Nieco inaczej działa pętla Do...Loop Until, której ciało jest zawsze wykonywane przynajmniej jeden raz. Najczęściej w Warunku pętli wykorzystywana jest jakaś zmienna. Należy zadbad, aby w ciele pętli wartośd tej zmiennej zmieniała się, aby doprowadzid do prawdziwości Warunku i zakooczyd działanie pętli.

Przykład 1: wymuszanie poprawnych danych Sub wymuszanie_danych() Do liczba = InputBox("Podaj liczbę z przedziału 1..100") Loop Until liczba >= 1 And liczba <= 100 tu warunek odwrotny do warunku z przykładu z instrukcją While, napisany zgodnie z logicznymi prawami de Morgana End Sub

Przykład 2: program oblicza n-tą sumę szeregu: Sub Suma_Until() Dim n As Byte Dim su As Single su = 0 li = 0 mia = -1 i = 1 n = InputBox("Ile wyrazów dodad? ") Do li = li + 1 mia = mia + 2 su = su + li / mia i = i + 1 Loop Until i > n MsgBox "Suma szeregu dla " & n & " wynosi " & su End Sub

Przykład 3: program oblicza liczbę szereg: z rozwinięcia w Sub pi() Dim pi As Single Cells.Clear eps = 0.0000000000001 dokładnośd, z jaką chcemy policzyd liczbę s = 0 i = 1 wyr = 1 / i - 1 / (i + 2) s = s + wyr Do Until wyr < eps i = i + 4 wyr = 1 / i - 1 / (i + 2) s = s + wyr Loop pi = 4 * s MsgBox "pi=" & pi End Sub

Instrukcja Exit Do Exit Do instrukcja pozwalająca na przerwanie działania pętli. Powoduje natychmiastowe przerwanie działania pętli, bez względu na prawdziwośd podanego warunku. Składnia instrukcji Exit Do: Exit Do Instrukcja Exit Do przeważnie poprzedzona jest instrukcją warunkową (najczęściej If) i powoduje przejście do rozkazu znajdującego się bezpośrednio za pętlą.

Instrukcja Exit Do Przykład użycia instrukcji Exit Do: Do intliczba=inputbox("podaj liczbę całkowitą ) if (intliczba=intstala) Then Exit Do End If Wynik=1/(intStala-intLiczba) intwiadomosc=msgbox(wynik) Loop While (intliczba>0)

Instrukcja pętli For Do Next Pozwala na wielokrotne powtarzanie bloku kodu. W przeciwieostwie do pętli typu Do wykonuje to ściśle określoną ilośd razy. Powtórzenia pętli zwane są iteracjami pętli.

Instrukcja pętli For Do Next Składnia instrukcji For: For ZmiennaLicznik = WartośćPoczątkowa To WartośćKońcowa [Step WartośćKroku] Blok instrukcji VB wykonywany gdy ZmiennaLicznik <= WartośćKońcowa (jeżeli WartośćKroku jest dodatnia), lub gdy ZmiennaLicznik>= WartośćKońcowa (gdy WartośdKroku jest ujemna) Next [ZmiennaLicznik]

Instrukcja pętli For Do Next Wyrażenia w nawiasach *+ są opcjonalne, tzn. nie muszą występowad w instrukcji. W przypadku, gdy pominięta zostanie częśd rozkazu określająca WartośćKroku, Visual Basic przyjmie domyślną WartośdKroku=1. Wpisywanie ZmiennejLicznik za słowem Next nie jest konieczne, jednak poprawia czytelnośd i analizę zapisu, szczególnie przy zagnieżdżonych instrukcjach For.

Instrukcja pętli For Do Next Przykład użycia instrukcji For: Co robi ten kawałek programu? intsuma=0 For intlicznik=2 To 100 Step 2 intsuma=intsuma+intlicznik Next intlicznik Nie należy zmieniad wartości ZmiennejLicznik wewnątrz bloku rozkazów pętli For. Może to doprowadzid do powstania pętli nieskooczonej ("zapętlenia" się programu), gdyż ZmiennaLicznik nigdy nie osiągnie WartościKoocowej. Przykład powstania pętli nieskooczonej: For intlicznik=2 To 100 Step 2 intlicznik=6 Next intlicznik

Instrukcja Exit For Exit For umożliwia opuszczenie pętli przed zakooczeniem jej działania. Powoduje natychmiastowe przerwanie działania pętli, bez względu na to ile iteracji zostało wykonane i ile pozostało do wykonania. Przykład użycia instrukcji Exit For: For intlicznik=1 To 10 if (intliczba=intlicznik) Then Exit For End If sngwynik=1/(intlicznik-intliczba) intwiadomosc=msgbox(sngwynik) Next intlicznik

Przykład 1: program oblicza n-tą sumę szeregu: Sub Suma_Szer_For() Dim n As Byte su = 0 li = 1 mia = 1 n = InputBox("Ile wyrazów chcesz dodad? ") For i = 1 To n tu instrukcja For sama pilnuje ilości kroków su = su + li / Mia li = li + 1 mia = mia + 2 Next i MsgBox "Suma szer przy użyciu For=" & su End Sub

Przykład 2: program szuka największego i najmniejszego elementu w ciągu n liczb, wygenerowanych funkcją losowania Sub Max_Min() Dim n As Byte n = InputBox("Ile wyrazów ma zawierad ciąg?") Max = 0 min = 100 'Generowanie losowe liczb rzeczywistych z przedziału 0..100 For i = 1 To n liczba = Rnd * 100 If liczba > Max Then Max = liczba ElseIf liczba < min Then min = liczba End If Next i MsgBox "Max=" & Max & " min=" & min End Sub