2.1 Funkcje - na przykładzie wyceny europejskiej

Wielkość: px
Rozpocząć pokaz od strony:

Download "2.1 Funkcje - na przykładzie wyceny europejskiej"

Transkrypt

1 Rozdział 2 Funkcje, pętle i tablice 2.1 Funkcje - na przykładzie wyceny europejskiej opcji kupna Aby zastosować nasz wzór do wyceny opcji (1.2) z Sekcji 1.2 musimy w szczególności umieć obliczyć w VBA dwumian Newtona dla 0 k N ( N k ) = N! k! (N k)!. (2.1) Wygodnie nam będzie również ustawić się tak żeby z łatwością się odwoływać do wzoru, bez potrzeby jego przepisywania. Do tego posłuży nam napisana za chwilę przez nas funkcja którą nazwiemy DwumianN Pierwsza funkcja Nasze obliczenia dwumianu Newtona będą bazować na tym że dla 1 k N wzór (2.1) można przepisać w postaci ( N k ) (N k + 1)(N k + 2)... N = (k 2)(k 1)k k N k + j =, j j=1 17

2 18 ROZDZIAŁ 2. FUNKCJE, PĘTLE I TABLICE dla k = 0 zawsze natomiast mamy ( N k ) = 1. Wypiszmy najpierw fragment kodu dla naszej funkcji a później krok po kroku omówimy jego poszczególne części. Poniższy fragment kodu umieścimy zaraz za procedurą PobierzDane w nowym pliku 03 Funkcje.xls. Poniżej wypiszemy interesujący nas w tej chwili fragment pliku zawierający funkcję. Function DwumianN(N As Integer, k As Integer) As Integer Dim i As Integer Dim prod As Integer prod = 1 For i = 1 To k DwumianN = prod Przyjrzyjmy się teraz naszej funkcji: W pierwszej linijce DwumianN jest nazwą funkcji. Funkcja ta ma dwa argumenty N oraz k. Obie te wartości są liczbami naturalnymi wobec czego dodana jest deklaracja N As Integer, k As Integer. Funkcja zwraca wartości naturalne. Jest to sprecyzowane przez dodanie As Integer pod koniec linijki. W linijkach Dim i As Integer Dim prod As Integer Deklarujemy robocze (lokalne) zmienne które będą potrzebne w obliczeniach. Zmienna i do indeksowania, oraz prod do obliczania produktu. Następnie mamy pętlę For i = 1 To k... Polecenie wewnątrz pętli będzie wykonane k razy.

3 2.1. FUNKCJE - NA PRZYKŁADZIE WYCENY EUROPEJSKIEJ OPCJI KUPNA19 Końcowa linijka DwumianN = prod zwraca wartość funkcji. Kod zawarty wewnątrz funkcji zawsze jest wykonywana do konca, o ile jej po drodze nie wstrzymamy. Oznacza to że jeśli na końcu funkcji wpisalibyśmy DwumianN = 100 to funkcja zwróci nam 100 a nie prod. Czasem fakt że funkcja doczytuje do końca nie jest pożądany. Czasami chcielibyśmy żeby funkcja w danym momencie zakończyła działanie. Można to łatwo osiągnąć za pomocą polecenia Exit Function. Przykładowo, wstawienie linijek If k > N Or k < 0 Then DwumianN = 0 Exit Function End If na samym początku funkcji pozwoli nam wyłapać sytuację w której k > N lub k < 0 i w takim przypadku zwrócić wartość 0 zamiast doliczać do końca. Zauważmy na końcu że jedna ze zmiennych w funkcji, mianowicie N, została poprzednio przez nas zarezerwowana jako zmienna która przechowuje czas końcowy w naszym modelu. Naturalnym pytaniem jest to czy nie spowoduje to dla nas pewnych komplikacji. Powiedzmy że przed wypisaniem funkcji mamy deklarację zmiennej N Dim N as Integer N = 10 A później wywołamy funkcję DwumianN(5,2). Czy oznacza to że VBA wykonując kod z funkcji DwumianN w miejsce występującej w nim zmiennej N będzie wstawiał 10? Okazuje się że tak nie będzie. Ponieważ N jest jednym z argumentów funkcji, na potrzeby kodu wykonywanego wewnątrz funkcji będzie ona przyjmowała wartość 5. Wewnątrz funkcji N jest zmienną lokalną. Gdyby natomiast nasza funkcja została zapisana jako Function DwumianN(Dim k as integer)

4 20 ROZDZIAŁ 2. FUNKCJE, PĘTLE I TABLICE identyczny kod jak poprzednio ( ) 10 to po wywołaniu DwumianN(2) zostało by obliczone Ponieważ za N 2 wstawiona by została wcześniej wczytana zmienna globalna. Zmienne lokalne można również definiować wewnątrz funkcji i będą one traktowane rozdzielnie ze zmiennymi globalnymi. Przykładowo dla poniższego fragmentu kodu So = 100 Function jedynka() Dim So As Integer So = 1 jedynka = So Range("D1").Value = jedynka Range("D2").Value = So po jego wykonaniu w komórce D1 pojawi się 1 a w komórce D2 pojawi się 100. Wartość So nie zostanie zmieniona ponieważ So została zadeklarowana jako zmienna lokalna przez wpisanie linijki Dim So As Integer wewnątrz funkcji. Uwaga! gdyby tej linijki nie było to w obu komórkach pojawiło by się 1, gdyż funkcja potraktowała by zmienną So jako zmienną globalną i zmieniła jej wartość (zachęcamy do testów). Uwaga 3 Dla mniej wprawionych programistów proponujemy trzymać się prostej zasady żeby starać się stosować różne oznaczenia dla różnych zmiennych. Oszczędzi to sporo kłopotów związanych z przypadkowymi i niechcianymi zmianami zmiennych globalnych. Uwaga 4 Najlepszą zasadą jest świadome deklarowanie zmiennych. Jako regułę przyjmujemy że zawsze deklarujemy zmienne. Deklarujemy je również wewnątrz funkcji i procedur, z wyjątkiem przypadków w których świadomie chcemy żeby funkcja lub procedura zmieniała nam wcześniej zadeklarowane zmienne globalne (wtedy świadomie pomijamy deklarację zmiennej wewnątrz funkcji lub procedury).

5 2.1. FUNKCJE - NA PRZYKŁADZIE WYCENY EUROPEJSKIEJ OPCJI KUPNA Poste podejście do funkcji - dla tych którzy nie lubią zbędnych komplikacji. Tak jak wspomnieliśmy Visual Basic jest językiem przyjaznym. W prostym wydaniu nasz kod mógłby wyglądać następująco. Function DwumianN(N, k) prod = 1 For i = 1 To k DwumianN = prod Jednak tak jak poprzednio wspominaliśmy, brak deklaracji zmiennych i typów zawsze znacznie spowalnia obliczenia. Warto jest być jednak świadomym że można pisać szybko i zwięźle jeśli nie zależy nam na szybkości obliczeniowej. Pisząc kod, tak jak powyżej, bez żadnego deklarowania zmiennych powinniśmy się stosować do zaleceń z Uwagi Wycena europejskiej opcji kupna w modelu dwumianowym W tej sekcji wprowadzimy funkcję która pozwoli nam wyceniać opcje w modelu dwumianowym. Zauważmy że z punktu widzenia wyceny opcji prawdopodobieństwo rzeczywiste p nie odgrywa żadnej roli. Wykorzystamy więc zmienną p do do obliczenia prawdopodobieństwa martyngałowego p. Będziemy się trzymać tego oznaczenia do końca naszych wykładów. Jest istotne żebyśmy byli tego świadomi. Przy wycenie instrumentów pochodnych kluczowa jest świadomość względem której miary dokonywane są obliczenia. Powtarzamy więc, że p będzie dla nas od teraz miarą martyngałową. Wypiszmy najpierw kod który posłuży nam do wyceny a później dokonamy kilku uwag. W celu zachowania zwięzłości, fragmenty kodu omówione już wcześniej zostaną jedynie zasygnalizowane. Nie będziemy przepisywać zbędnych fragmentów i skoncentrujemy się nad tym co jest w danej chwili istotne. Plik 03 Funkcje.xls.

6 22 ROZDZIAŁ 2. FUNKCJE, PĘTLE I TABLICE Deklaracja zmiennych: So, N, R, p, U, D, X Sub PobierzDane() wczytywanie zmiennych So, N, R, U, D, X p = (R - D) / (U - D) Range("A4").Value = "p*" Range("B4").Value = p End Sub Funkcja: DwumianN(N, k) Function max(a, b) If a > b Then max = a Else max = b Function Wyplata(S As Double) As Double Wyplata = max(s - X, 0) Function Cena() As Double Dim i As Integer Dim suma As Double suma = 0 For i = 0 To N suma = suma + DwumianN(N, i) * p ^i * (1 - p) ^(N - i) * Wyplata(So * (1 + U) ^i * (1 + D) ^(N - i)) Cena = suma / (1 + R) ^N Sub Wycen() PobierzDane Range("A10").Value = "Cena Call" Range("B10").Value = Cena() End Sub Teraz omówmy krok po kroku interesujące nas fragmenty kodu:

7 2.1. FUNKCJE - NA PRZYKŁADZIE WYCENY EUROPEJSKIEJ OPCJI KUPNA23 W procedurze PobierzDane, tak jak w pliku 02 KomunikacjaZmienne.xls, wczytujemy zmienne So, N, R, U, D, X. Różnicą jest to że wewnątrz procedury liczymy też prawdopodobieństwo martyngałowe p i przypisujemy jego wartość zmiennej p poprzez p = (R - D) / (U - D) Plik 03 Funkcje.xls powstał poprzez zmodyfikowanie pliku 02 KomunikacjaZmienne.xls. Linijka Range("A4").Value = "p*" zapewni że w komórce A4 w Excelu zobaczymy p* zamiast p. powyższa linijka przypisuje komórce A4 tekst (zmienną typu string) zawierający p*. Następnie w komórce B4 wpisujemy wartość zmiennej p Range("B4").Value = p VBA nie posiada wbudowanej funkcji maksimum. Napisaliśmy sobie więc fragment kodu (funkcję max) który pozwoli nam ją implementować. Jedną rzeczą która jest godna uwagi jest to że świadomie nie zadeklarowaliśmy typu zmiennych na których funkcja pracuje oraz typu wartości które przyjmuje. Jest to podyktowane tym że świadomie chcemy żeby nasza funkcja działała na różnych typach zmiennych (np. zarówno dla double, integer jak i long) i odpowiednio przyjmowała różne typy wartości. Kolejną funkcją jest funkcja wypłaty. Nie jest ona absolutnie konieczna. Nasz program działałby równie dobrze bez niej gdyby wewnątrz funkcji Wycen wpisać kod liczący funkcję wypłaty. Niemniej jednak dobrą praktyką jest rozdzielanie kodu na części jeśli poprawi to klarowność programu. Jeśli napiszemy, tak jak wyżej, osobną funkcję która będzie nam liczyć wypłatę z opcji, to łatwo nam będzie modyfikować program. N przykład jeśli zamiast opcji kupna będziemy chcieli wycenić opcję sprzedaży to wystarczy powyższą funkcję Wyplata zmodyfikować jako Function Wyplata(S As Double) As Double Wyplata = max(x - S, 0)

8 24 ROZDZIAŁ 2. FUNKCJE, PĘTLE I TABLICE Funkcja Cena liczy wartość opcji za pomocą wzoru (1.2). Zauważmy że jedna z linijek w funkcji kończy się symbolem. Jest to symbol którego musimy użyć, jeśli chcemy żeby linijka wyświetlała się w dwóch wierszach. Bes symbolu cała linijka musiała by być zamknięta w jednym wierszu i wychodziłaby za ekran. Zawsze chcemy być w sytuacji w której możemy wywoływać funkcje z pozycji Excela, bez potrzeby wchodzenia w edytor VBA. Posłuży nam do tego procedura Wycen. Wczytuje ona dane, w komórce A10 wpisuje tekst Cena Call, a w komórce B10 liczy i wypisuje wartość opcji. Teraz żeby wyceniać opcje wystarczy na przykład stworzyć nowy przycisk z formularzy i przypisać mu makro Wycen. 2.2 Pętle W funkcji DwumianN w celu obliczenia dwumianu Newtona zastosowaliśmy pętle For. Nie jest to jedyna możliwość. W tej sekcji omówimy inne typowe pętle które mogły być w tym celu wykorzystane. ( ) Wszystkie nasze pętle będą N robić to samo, liczyć dwumian Newtona. Zanim pętla wystartuje w k każdym przypadku musimy zacząć od linijki prod = 1 Odrębne funkcje wykorzystujące odmienne pętle znajdują się w pliku 03 Petle.xls. Poniżej wypiszemy jedynie fragmenty kodu zawierające interesujące nas pętle. Jak zwykle, zaczniemy od wypisania kodu, po czym zrobimy kilka komentarzy. Następujące pętle są równoważne: Pętla For For i = 1 To k Pętla For z ustalonym skokiem For i = k To 1 Step -1

9 2.2. PĘTLE 25 Pętla Do While i = 1 Do While i <= k i = i + 1 Loop Pętla Do Until i = 1 Do i = i + 1 Loop Until i > k Pętla Do Loop i = 0 Do i = i + 1 If i > k Then Exit Do Loop Teraz kilka uwag. Pętla For jest najprostszą pętlą. Zadajemy wartość początkową i oraz krotność k ile razy chcemy żeby pętla została wywołana. Linijka Next i powiększa zmienną i o 1. Czasem przydatne jest żeby iteracja pętli przebiegała w tył zamiast do przodu. Dodanie komendy Step -1 spowoduje że linijka pomniejszy zmienną i o 1. Wielkość kroku może być dowolna. Na przykład jeśli zamiast Step -1 napiszemy Step -2 to komenda pomniejszy zmienną i o 2. Można oczywiście zażądać żeby krok był dodatni i większy od jeden; na przykład Step 5. Pętla Do While jest wykonywana dopóki warunek zdefiniowany po prawej od słowa While jest spełniony. Istotne jest to że warunek jest sprawdzony na początku pętli. Jeśli nie jest spełniony polecenie wewnątrz pętli nie jest wykonywane.

10 26 ROZDZIAŁ 2. FUNKCJE, PĘTLE I TABLICE Pętla Do Until jest wykonywana dopóki warunek zdefiniowany po prawej od słowa Until jest spełniony. Różnicą jest to że warunek jest sprawdzany pod koniec polecenia wewnątrz pętli. Oznacza to że polecenie będzie przynajmniej jeden raz wykonane (za pierwszym przebiegiem pętli). Pętla Do Loop pozwala na zapisanie warunku wychodzącego z pętli (Exit Do) w dowolnym miejscu. Brak warunku Exit Do oznacza że pętla będzie wykonywana bez przerwy (co przeważnie oznacza zawieszenie się programu a często również zawieszenie komputera). W pętlach typu For, jeśli istnieje taka potrzeba, można dodać polecenie Exit For które spowoduje wyjście z pętli. Uwaga 5 Pętle typu For są przeważnie bezpieczniejsze. Gwarantują że program się nie zawiesi w przypadku gdy błędnie zdefiniujemy warunek wyjścia. 2.3 Tablice - na przykładzie wyceny europejskiej opcji kupna Wracamy teraz do wyceny opcji. Najprawdopodobniej sporym zaskoczeniem dla większości będzie to że program opisany w Sekcji... z pliku 03 Funkcje.xls działa bardzo dobrze dla małych terminów realizacji N (poniżej dwudziestu), ale dla większych VBA zwraca raport błedu Overflow (Rysunek 2.1). Jest Rysunek 2.1: Raport błędu przekroczenia zakresu zmiennej.

11 2.3. TABLICE - NA PRZYKŁADZIE WYCENY EUROPEJSKIEJ OPCJI KUPNA27 ( ) N to związane z faktem iż wartość dwumianu Newtona rośnie w astronomicznym tempie i już przy N = 20 przekracza zakres zmiennej Integer k która jest mu przypisana. Drobną poprawą jest zmiana zmiennych użytych do definicji funkcji DwumianN z typu Integer na Long, ale jest to poprawka niewystarczająca. Już przy N równym czterdzieści pojawia się ten sam błąd. Jest to dla nas sytuacja niedopuszczalna. W przyszłości, kiedy będziemy mówić o wycenie opcji amerykańskich, zakres N który w praktyce będzie nas interesował będzie wynosić kilkaset lub powyżej tysiąca. Przy takich parametrach dwumian Newtona jest liczbą astronomiczną i z pewnością wyskoczy z zakresu. Są dwa rozwiązania tego problemu. Pierwszym jest zmiana deklaracji zmiennych użytych przy obliczeniu dwumianu oraz typu funkcji DwumianN z Integer na Double: Poprawka funkcji DwumianN Function DwumianN(N As Integer, k As Integer) As Double If k > N Or k < 0 Then DwumianN = 0 Exit Function End If Dim i As Integer Dim prod As Double prod = 1 For i = 1 To k DwumianN = prod Uwaga 6 Zauważmy że część powyższego kodu jest w innym kolorze. Od tej pory większość programów będzie powstawać na podstawie modyfikacji starego kodu. Zmienione części będziemy zaznaczać odmiennym kolorem żeby zwrócić na nie uwagę czytelnika. Wystarczyło zmienić typ funkcji DwumianN oraz typ zmiennej prod na Double. Przy takiej zmianie nasz program będzie działał przy dowolnym N. Jest tak

12 28 ROZDZIAŁ 2. FUNKCJE, PĘTLE I TABLICE dzięki temu że w momencie gdy dwumian staje się liczbą bardzo wielką zostaje on zaokrąglony do najniższej mu reprezentacji za pomocą liczby typu Double. W tym momencie, dla dużych N, funkcja DwumianN liczy po prostu przybliżenie dwumianu Newtona a nie jego dokładną wartość. Wiele osób może uznać to rozwiązanie za niezbyt eleganckie. Po pierwsze, mimo tego że wiemy że dwumian jest liczbą naturalną traktujemy go jako liczbę rzeczywistą. W wielu będzie to budzić sprzeciw wewnętrzny. Po drugie widać że nasze problemy są spowodowane sposobem w jaki cena opcji jest obliczana ( ) we wzorze (1.2). Żeby zastosować wzór najpierw liczymy dwumian N który jest liczbą astronomiczną, tylko po to żeby go później przemnożyć przez (p ) k (1 p ) N k która jest liczbą mikroskopijnie małą. Wygląda na k to że pomimo iż jesteśmy w stanie (sztucznie traktując dwumian jako liczbę rzeczywistą) zastosować wzór (1.2) do wyceny opcji, nie jest on optymalny z punktu widzenia numeryki. To spostrzeżenie prowadzi nas to do drugiego rozwiązania problemu: zmiany sposobu w jaki liczymy wartość opcji. W tej sekcji zastosujemy alternatywne podejście do wyceny opcji. Zamiast bezpośrednio stosować wzór, będziemy wyceniać opcje na drzewie dwumianowym za pomocą indukcji, cofając się w czasie krok po kroku od terminu realizacji N do chwili zero. Ta metoda jest dla nas ważna nie tylko ze względu na opcje europejskie, okaże się że to podejście będzie bardzo przydatne w przypadku opcji amerykańskich. Żeby zastosować wycenę na drzewie dwumianowym będą nam potrzebne tablice. Poniżej zamieszczamy kod wyceny opcji europejskiej call za pomocą tablic, a zaraz poniżej omówimy jego istotne fragmenty. Poniższy kod jest modyfikacją pliku 03 Funkcje.xls.) Plik 05 Tablice.xls. Deklaracja zmiennych: So, N, R, p, U, D, X Dim H as Variant Sub PobierzDane() wczytywanie zmiennych So, N, R, U, D, X obliczanie p ReDim H(N) as Double End Sub

13 2.3. TABLICE - NA PRZYKŁADZIE WYCENY EUROPEJSKIEJ OPCJI KUPNA29 Funkcja: max(a, b) Function Wyplata(S As Double) As Double Wyplata = max(s - X, 0) Function Cena() As Double Dim i As Integer Dim m As Integer For i = 0 To N H(i) = Wyplata(So * (1 + U) ^i * (1 + D) ^(N - i)) For m = N - 1 To 0 Step -1 For i = 0 To m H(i) = (p * H(i + 1) + (1 - p) * H(i)) / (1 + R) Next m Cena = H(0) Sub Wycen() PobierzDane Range("A10").Value = "Cena Call" Range("B10").Value = Cena() End Sub Linijka Dim H as Variant deklaruje nam zmienną typu Variant. Oznacza to że może ona przyjmować rozmaite typy. Może być ona użyta na przykład jako Double, Integer, Boolean. Dla nas istotniejsze jest jednak to że zmienne typu Variant mogą być użyte do przechowywania tablic.

14 30 ROZDZIAŁ 2. FUNKCJE, PĘTLE I TABLICE Żeby użyć zmiennej typu Variant jako tablicy trzeba zadeklarować jej rozmiar. Jest to zrobione w linijce ReDim H(N) as Double Od tej chwili zmienna H przechowuje tablicę rozmiaru N+1 zmiennych typu Double. W praktyce oznacza to że H jest ciągiem N+1 liczb H = (H(0), H(1), H(2),..., H(N)). Można teraz na przykład przypisać H(0)=0.1 oraz H(1)=0.2. Po takim przypisaniu zmienna H przechowuje 0.1 oraz 0.2 na pierwszej i drugiej współrzędnej. Ważnym w tym podejściu jest fakt że nie musimy sztywno ustalać rozmiaru tablicy. Wielkość tablicy jest zmienną N. W zależności od przebiegu programu może ona przyjmować różne wartości. Oznacza to że w momencie deklaracji ReDim H(N) as Double zmiennej H jest przypisana taka wielkość N (a co za tym idzie taka ilość pamięci komputera) jaka jest w danym momencie potrzebna. Warto w tym miejscu wspomnieć że można deklarować wielowymiarowe tablice: ReDim H(N,M) as Double da nam macierz o wymiarze (N+1) (M+1), a ReDim H(N,M,K) as Double tablicę o (N+1) (M+1) (K+1) współczynnikach. Omawiając kolejny fragment kodu naszkicujmy jak wygląda wycena w modelu dwumianowym (dla trzech kroków) H(3) H (2) H(2)... H (1) H(1) H (0) H(0)

15 2.3. TABLICE - NA PRZYKŁADZIE WYCENY EUROPEJSKIEJ OPCJI KUPNA31 Zaczynamy od chwili końcowej N. W chwili końcowej zmienna H = (H(0), H(1),..., H(N)) przechowuje wypłatę z opcji. Jest to zaimplementowane przez For i = 0 To N H(i) = Wyplata(So * (1 + U) ^i * (1 + D) ^(N - i)) Teraz wyceniamy opcję cofając się w czasie. Z rysunku widać że powinniśmy liczyć H (i) = p H(i + 1) + (1 p )H(i). 1 + R Nie ma jednak potrzeby deklarowania kolejnej zmiennej H. Możemy przechowywać wyniki cały czas w tej samej zmiennej H. Po zakończeniu działania pętli zostaniemy z H = (H(0), H(1), H(2),..., H(N)), gdzie H(0) będzie przechowywać dzisiejszą cenę opcji. Zmienne H(1), H(2),..., H(N) z tabeli są dla nas zupełnie nieistotne i je ignorujemy (przechowują one śmieci z obliczeń wykonanych w poprzednich krokach). Zauważmy na końcu że obliczyliśmy jedynie dzisiejszą cenę, a patrząc na powyższy kod widać że rozpatrując wyżej wymiarowe tablice moglibyśmy równie dobrze odtworzyć całe drzewko cen. To będzie kolejny krok, którym zajmiemy się w następnym rozdziale. Na razie istotniejsza jest dla nas nauka programowania niż sama wycena.

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

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre) Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie

Bardziej szczegółowo

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

Instrukcje cykliczne (pętle) WHILE...END WHILE Instrukcje cykliczne (pętle) Pętle pozwalają na powtarzanie fragmentu kodu programu. PĘTLE LOGICZNE WHILE...END WHILE While (warunek)...... End While Pętla będzie się wykonywała dopóki warunek jest spełniony.

Bardziej szczegółowo

Visual Basic for Applications. Wstęp

Visual Basic for Applications. Wstęp Visual Basic for Applications Materiały źródłowe: http://www.vbamania.estrefa.pl 2008-01-14 Wstęp Visual Basic for Applications to język programowania, dołączony do wielu aplikacji. Wspierają go między

Bardziej szczegółowo

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na

Bardziej szczegółowo

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

Podstawy programowania w języku Visual Basic dla Aplikacji (VBA) Podstawy programowania w języku Visual Basic dla Aplikacji (VBA) Instrukcje Język Basic został stworzony w 1964 roku przez J.G. Kemeny ego i T.F. Kurtza z Uniwersytetu w Darthmouth (USA). Nazwa Basic jest

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

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

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

Bardziej szczegółowo

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.

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. 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. Sub Hasla1() Dim wzor_hasla As String Dim haslo As String Dim adres

Bardziej szczegółowo

LibreOffice Calc VBA

LibreOffice Calc VBA LibreOffice Calc VBA LibreOffice Calc umożliwia tworzenie własnych funkcji i procedur przy użyciu składni języka VBA. Dostęp do edytora makr: Narzędzia->Makra->Zarządaj makrami->libreoffice Calc Aby rozpocząć

Bardziej szczegółowo

7. Pętle for. Przykłady

7. Pętle for. Przykłady . Pętle for Przykłady.1. Bez użycia pętli while ani rekurencji, napisz program, który wypisze na ekran kolejne liczby naturalne od 0 do pewnego danego n. 5 int n; 6 cin >> n; 8 for (int i = 0; i

Bardziej szczegółowo

Podstawy Programowania C++

Podstawy Programowania C++ Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:

Bardziej szczegółowo

Programowanie - wykład 4

Programowanie - wykład 4 Programowanie - wykład 4 Filip Sośnicki Wydział Fizyki Uniwersytet Warszawski 20.03.2019 Przypomnienie Prosty program liczący i wyświeltający wartość silni dla wprowadzonej z klawiatury liczby: 1 # include

Bardziej szczegółowo

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu. Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą

Bardziej szczegółowo

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

Jak zawsze wyjdziemy od terminologii. While oznacza dopóki, podczas gdy. Pętla while jest Pętle Pętla to pewien fragment kodu, który jest wykonywany wielokrotnie. Wyobraź sobie taką sytuację. Piszesz program do szyfrowania danych. Dane są szyfrowane kolejno bajt po bajcie. Załóżmy, że plik

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

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

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Pętle. Programowanie komputerowe Wydział Zarządzania AGH Katedra Informatyki Stosowanej Pętle 1 Program wykładu Pojęcie pętli Pętla FOR Pętla DO LOOP Pętle zagnieżdżone 2 Pojęcie pętli Suma lub iloczyn dowolnych n liczb wprowadzanych

Bardziej szczegółowo

Tablice. Jones Stygar na tropie zmiennych

Tablice. Jones Stygar na tropie zmiennych Tablice Jones Stygar na tropie zmiennych Czym jest tablica? Obecnie praktycznie wszystkie języki programowania obsługują tablice. W matematyce odpowiednikiem tablicy jednowymiarowej jest ciąg (lub wektor),

Bardziej szczegółowo

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

for (inicjacja_warunkow_poczatkowych; wyrazenie_warunkowe; wyrazenie_zwiekszajace) { blok instrukcji; } Pętle Pętle (ang. loops), zwane też instrukcjami iteracyjnymi, stanowią podstawę prawie wszystkich algorytmów. Lwia część zadań wykonywanych przez programy komputerowe opiera się w całości lub częściowo

Bardziej szczegółowo

Programowanie strukturalne i obiektowe. Funkcje

Programowanie strukturalne i obiektowe. Funkcje Funkcje Często w programach spotykamy się z sytuacją, kiedy chcemy wykonać określoną czynność kilka razy np. dodać dwie liczby w trzech miejscach w programie. Oczywiście moglibyśmy to zrobić pisząc trzy

Bardziej szczegółowo

TABLICA (ang. array) pojedyncza zmienna z wieloma komórkami, w których można zapamiętać wiele wartości tego samego typu danych.

TABLICA (ang. array) pojedyncza zmienna z wieloma komórkami, w których można zapamiętać wiele wartości tego samego typu danych. Złożone typy danych - TABLICE TABLICA (ang. array) pojedyncza zmienna z wieloma komórkami, w których można zapamiętać wiele wartości tego samego typu danych. * Może przechowywać dowolny typ danych, typ

Bardziej szczegółowo

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

Pętle. Dodał Administrator niedziela, 14 marzec :27 Pętlami nazywamy konstrukcje języka, które pozwalają na wielokrotne wykonywanie powtarzających się instrukcji. Przykładowo, jeśli trzeba 10 razy wyświetlić na ekranie pewien napis, to można wykorzystać

Bardziej szczegółowo

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

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 1. Programowanie komputerowe Wydział Zarządzania AGH Katedra Informatyki Stosowanej Podstawy VBA cz. 1 Programowanie 1 Program wykładu Struktura programu Instrukcja przypisania Wprowadzanie danych Wyprowadzanie wyników Instrukcja

Bardziej szczegółowo

Program szkoleniowy. 24 h dydaktycznych (18 h zegarowych) NAZWA SZCZEGÓŁY CZAS

Program szkoleniowy. 24 h dydaktycznych (18 h zegarowych) NAZWA SZCZEGÓŁY CZAS Program szkoleniowy Microsoft Excel VBA Poziom Podstawowy 24 h dydaktycznych (18 h zegarowych) NAZWA SZCZEGÓŁY CZAS 1. Nagrywanie makr Procedura nagrywania makra Nadanie odpowiedniej nazwy Przypisanie

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania wykład 4 Piotr Cybula Wydział Matematyki i Informatyki UŁ 2012/2013 http://www.math.uni.lodz.pl/~cybula Instrukcje pętli Pętle służą do iteracyjnego wykonywania pewnych kroków Zazwyczaj

Bardziej szczegółowo

Lekcja : Tablice + pętle

Lekcja : Tablice + pętle Lekcja : Tablice + pętle Wprowadzenie Oczywiście wiesz już jak dużo można osiągnąć za pomocą tablic oraz jak dużo można osiągnąć za pomocą pętli, jednak tak naprawdę prawdziwe możliwości daje połączenie

Bardziej szczegółowo

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

for (inicjacja_warunkow_poczatkowych(końcowych); wyrazenie_warunkowe; wyrazenie_zwiekszajace(zmniejszające)) { blok instrukcji; } Pętle Pętle (ang. loops), zwane też instrukcjami iteracyjnymi, stanowią podstawę prawie wszystkich algorytmów. Lwia część zadań wykonywanych przez programy komputerowe opiera się w całości lub częściowo

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Visual Basic dla AutoCAD

Visual Basic dla AutoCAD Visual Basic dla AutoCAD 1. Programowanie Język programowania to sztuczny język przeznaczony do zapisu algorytmów, w taki sposób, aby mogły one być wykonywane przez komputer. Język programowania charakteryzuje

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Programowanie w Turbo Pascal

Programowanie w Turbo Pascal Skróty: ALT + F9 Kompilacja CTRL + F9 Uruchomienie Struktura programu: Programowanie w Turbo Pascal Program nazwa; - nagłówek programu - blok deklaracji (tu znajduje się VAR lub CONST) - blok instrukcji

Bardziej szczegółowo

Maxima i Visual Basic w Excelu

Maxima i Visual Basic w Excelu 12 marca 2013 Maxima - zapoznanie z programem Maxima to program - system algebry komputerowej. Podstawowa różnica w stosunku do klasycznych programów obliczeniowych jest możliwość wykonywania obliczeń

Bardziej szczegółowo

Pętle instrukcje powtórzeo

Pętle instrukcje powtórzeo 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

Bardziej szczegółowo

Rekurencja (rekursja)

Rekurencja (rekursja) Rekurencja (rekursja) Rekurencja wywołanie funkcji przez nią samą wewnątrz ciała funkcji. Rekurencja może być pośrednia funkcja jest wywoływana przez inną funkcję, wywołaną (pośrednio lub bezpośrednio)

Bardziej szczegółowo

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

Liczby losowe i pętla while w języku Python Liczby losowe i pętla while w języku Python Mateusz Miotk 17 stycznia 2017 Instytut Informatyki UG 1 Generowanie liczb losowych Na ogół programy są spójne i prowadzą do przewidywanych wyników. Czasem jednak

Bardziej szczegółowo

Utworzenie funkcji użytkownika w Visual Basic

Utworzenie funkcji użytkownika w Visual Basic Utworzenie funkcji użytkownika w Visual Basic Po co? Potrzebna jest nam funkcja, która nie występuje w Excelu. Zadanie 1. Utwórz funkcję użytkownika kotek, która będzie funkcją dwóch zmiennych b i h i

Bardziej szczegółowo

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PODSTAWOWY.

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PODSTAWOWY. Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PODSTAWOWY SZKOLENIE JEST DLA OSÓB, KTÓRE: nigdy wcześniej nie programowały lub nie miały styczności z programowaniem od dłuższego czasu,

Bardziej szczegółowo

Zapis algorytmów: schematy blokowe i pseudokod 1

Zapis algorytmów: schematy blokowe i pseudokod 1 Zapis algorytmów: schematy blokowe i pseudokod 1 Przed przystąpieniem do napisania kodu programu należy ten program najpierw zaprojektować. Projekt tworzącego go algorytmu może być zapisany w formie schematu

Bardziej szczegółowo

Algorytmika i Programowanie VBA 1 - podstawy

Algorytmika i Programowanie VBA 1 - podstawy Algorytmika i Programowanie VBA 1 - podstawy Tomasz Sokół ZZI, IL, PW Czas START uruchamianie środowiska VBA w Excelu Alt-F11 lub Narzędzia / Makra / Edytor Visual Basic konfiguracja środowiska VBA przy

Bardziej szczegółowo

Wyszukiwanie binarne

Wyszukiwanie binarne Wyszukiwanie binarne Wyszukiwanie binarne to technika pozwalająca na przeszukanie jakiegoś posortowanego zbioru danych w czasie logarytmicznie zależnym od jego wielkości (co to dokładnie znaczy dowiecie

Bardziej szczegółowo

INSTRUKCJA SKOKU GOTO

INSTRUKCJA SKOKU GOTO Opracowała Joanna Kisielińska 1 Składnia instrukcji GoTo GoTo etykieta INSTRUKCJA SKOKU GOTO etykieta musi zostać umieszczone w programie: etykieta: Instrukcja lub etykieta: Instrukcja Przykład Sub ocena()

Bardziej szczegółowo

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

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else. Nazwa implementacji: Nauka języka Python wyrażenia warunkowe Autor: Piotr Fiorek Opis implementacji: Poznanie wyrażeń warunkowych if elif - else. Nasz kalkulator umie już liczyć, ale potrafi przeprowadzać

Bardziej szczegółowo

W dowolnym momencie można zmienić typ wskaźnika.

W dowolnym momencie można zmienić typ wskaźnika. c++ Wskaźniki mają jeszcze jedną przydatną cechę. W dowolnym momencie można zmienić typ wskaźnika. Robi się to za pomocą operatora rzutowania. Najpierw zdefiniujemy sobie wsk_uniwersalny mogący pokazywać

Bardziej szczegółowo

VBA praca z makrami w Excelu: piszemy kod! Ulepszamy program! 0. Parę uwag o samym edytorze

VBA praca z makrami w Excelu: piszemy kod! Ulepszamy program! 0. Parę uwag o samym edytorze VBA praca z makrami w Excelu: piszemy kod! Ulepszamy program! 0. Parę uwag o samym edytorze Ustawienia Edytora VB Wymuszanie deklarowania zmienny Wyłączenie ostrzeżeń o błędnej składni Włączanie/wyłączanie

Bardziej szczegółowo

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

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady Pętle i tablice. Spotkanie 3 Dr inż. Dariusz JĘDRZEJCZYK Pętle: for, while, do while Tablice Przykłady 11/26/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Pętla w największym uproszczeniu służy

Bardziej szczegółowo

Programowanie w języku Python. Grażyna Koba

Programowanie w języku Python. Grażyna Koba Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i

Bardziej szczegółowo

2. Kliknij Insert->Userform. Jeżeli Toolbox nie pojawi się automatycznie, kliknij View -> Toolbox. Otrzymany widok powinien być jak poniżej.

2. Kliknij Insert->Userform. Jeżeli Toolbox nie pojawi się automatycznie, kliknij View -> Toolbox. Otrzymany widok powinien być jak poniżej. Formularze VBA Przykład1 INTERAKTYWNY FORMULARZ Program tworzący interaktywny formularz. Objaśnienie: w dowolnym momencie można wprowadzić wartość w polu tekstowym ID, Excel VBA wczytuje odpowiedni rekord.

Bardziej szczegółowo

Program 6. Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje:

Program 6. Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje: Program 6 Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje: Funkcja pobierz_osobe wczytuje dane osoby podanej jako argument. Funkcja wypisz_osobe

Bardziej szczegółowo

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p. Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Komentarze Funkcja printf() Zmienne Łańcuchy

Bardziej szczegółowo

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ć

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ć MatLab część III 1 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ć komentarze poprzedzone znakiem % Skrypty

Bardziej szczegółowo

Wprowadzenie do programowania w VBA

Wprowadzenie do programowania w VBA Wprowadzenie do programowania w VBA Spis treści Struktura programu... 1 Typy danych... 2 Deklaracja zmiennych i stałych... 2 Deklaracja tablic... 3 Instrukcja przypisania... 3 Wprowadzanie danych... 3

Bardziej szczegółowo

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Obliczenia równoległe w Microsoft Visual Basic Środowisko Microsoft Visual Studio 2010 i nowsze umożliwia zrównoleglenie obliczeń na wiele rdzeni procesorów. Służą do tego odpowiednie metody dostępne wraz

Bardziej szczegółowo

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

Podstawy programowania skrót z wykładów: Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace

Bardziej szczegółowo

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

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe Podstawy programowania Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe 1 I. Składnia Składnia programu Program nazwa; Uses biblioteki; Var deklaracje zmiennych;

Bardziej szczegółowo

Materiały do laboratorium MS ACCESS BASIC

Materiały do laboratorium MS ACCESS BASIC Materiały do laboratorium MS ACCESS BASIC Opracowała: Katarzyna Harężlak Access Basic jest językiem programowania wykorzystywanym w celu powiązania obiektów aplikacji w jeden spójny system. PROCEDURY I

Bardziej szczegółowo

Technologia informacyjna programowanie Janusz Uriasz

Technologia informacyjna programowanie Janusz Uriasz Technologia informacyjna programowanie Janusz Uriasz 2. Programowanie 2.1. Struktura programu, edycja, kompilacja, uruchomienie programu. Śledzenie programu VB- cd Składowe programu Procedura jest bardzo

Bardziej szczegółowo

Wieczorowe Studia Licencjackie Wrocław, Wykład nr 6 (w oparciu o notatki K. Lorysia, z modyfikacjami) Sito Eratostenesa

Wieczorowe Studia Licencjackie Wrocław, Wykład nr 6 (w oparciu o notatki K. Lorysia, z modyfikacjami) Sito Eratostenesa Wieczorowe Studia Licencjackie Wrocław, 7.11.2006 Wstęp do programowania Wykład nr 6 (w oparciu o notatki K. Lorysia, z modyfikacjami) Sito Eratostenesa Zaprezentujemy teraz algorytm na wyznaczanie wszystkich

Bardziej szczegółowo

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 Załóżmy, że uprawiamy jogging i chcemy monitorować swoje postępy. W tym celu napiszemy program, który zlicza, ile czasu

Bardziej szczegółowo

VBA praca z makrami w Excelu

VBA praca z makrami w Excelu VBA praca z makrami w Excelu Dariusz Aksamit Wydział Fizyki Politechniki Warszawskiej Szkolenie Programowanie w języku Visual Basic for Application (VBA) Zajęcia 1 i 2 VBA praca z makrami w Excelu 1. Jak

Bardziej szczegółowo

Aplikacje w środowisku VBA. Visual Basic for Aplications

Aplikacje w środowisku VBA. Visual Basic for Aplications Aplikacje w środowisku VBA Visual Basic for Aplications Podstawowe informacje o VBA Visual Basic for Aplications, w skrócie VBA, to język programowania rozwijany przez Microsoft, którego zastosowanie pozwala

Bardziej szczegółowo

Wstęp do informatyki- wykład 7

Wstęp do informatyki- wykład 7 1 Wstęp do informatyki- wykład 7 Operatory przypisania, złożone operatory przypisania, Pętla while i do..while Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania.

Bardziej szczegółowo

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

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja Pętle W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. Instrukcja for ma następującą postać: for (w1;w2;w3) instrukcja w1, w2, w3 są wyrażeniami Schemat blokowy

Bardziej szczegółowo

INFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki

INFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki INFORMATYKA Z MERMIDONEM Programowanie Moduł 5 / Notatki Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego. Realizator projektu: Opracowano w ramach projektu

Bardziej szczegółowo

Maxima i Visual Basic w Excelu

Maxima i Visual Basic w Excelu 25 marca 2014 Jak komunikować się z komputerem? Trzy podstawowe elementy programu: 1 wprowadzenie danych (wejście), 2 wykonanie operacji przewidzianych programem (najczęściej obliczeń), 3 zwrócenie wyniku

Bardziej szczegółowo

1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja. 2. Schemat blokowy przedstawia algorytm obliczania

1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja. 2. Schemat blokowy przedstawia algorytm obliczania 1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja nie ma parametru i zwraca wartość na zewnątrz. nie ma parametru i nie zwraca wartości na zewnątrz. ma parametr o nazwie void i zwraca

Bardziej szczegółowo

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

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 2. Programowanie komputerowe Wydział Zarządzania AGH Katedra Informatyki Stosowanej Podstawy VBA cz. 2 Programowanie 1 Program wykładu Typy danych Wyrażenia Operatory 2 VBA Visual Basic dla aplikacji (VBA) firmy Microsoft jest językiem

Bardziej szczegółowo

PROGRAMOWANIE MAKR W PROGRAMIE EXCEL W JĘZYKU VISUAL BASIC

PROGRAMOWANIE MAKR W PROGRAMIE EXCEL W JĘZYKU VISUAL BASIC T. Zię b a k o ws k i: P ROG R A MO W A N I E M A K R... strona 1 PROGRAMOWANIE MAKR W PROGRAMIE EXCEL W JĘZYKU VISUAL BASIC W programie Microsoft Excel można często powtarzane czynności zautomatyzować

Bardziej szczegółowo

Laboratorium 5: Tablice. Wyszukiwanie binarne

Laboratorium 5: Tablice. Wyszukiwanie binarne Wojciech Myszka Laboratorium 5: Tablice. Wyszukiwanie binarne 2016-05-07 09:02:17 +0200 1. Tablice Do tej pory nie było potrzeby odwoływać się do zmiennych złożonych. Programy były bardzo proste i korzystały

Bardziej szczegółowo

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

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst. Schematy blokowe I Jeżeli po schematach blokowych będzie używany język C, to należy używać operatorów: '&&', ' ', '!=', '%' natomiast jeśli Ruby to 'and', 'or', '%', '!='. 1. Dostępne bloki: a) początek:

Bardziej szczegółowo

Wprowadzenie do edycji makr w Excelu

Wprowadzenie do edycji makr w Excelu Wprowadzenie do edycji makr w Excelu Zakładam, że masz otwarty edytor VBA. Jeśli nie, to wciśnij proszę w Excelu ALT+ f11 ten skrót nie zmienił się na szczęście w Excelu 2007. Makra można wpisywać w kilku

Bardziej szczegółowo

Informatyka I: Instrukcja 4.2

Informatyka I: Instrukcja 4.2 Informatyka I: Instrukcja 4.2 1 Wskaźniki i referencje - bezboleśnie Nauczyliśmy się do tej pory, że funkcje w języku C mogą zwracać wartość. Co jednak, gdybyśmy chcieli napisać funkcję, która rozwiąże

Bardziej szczegółowo

PROGRAMOWANIE MAKR W PROGRAMIE EXCEL W JĘZYKU VISUAL BASIC

PROGRAMOWANIE MAKR W PROGRAMIE EXCEL W JĘZYKU VISUAL BASIC T.Z iębakows ki: PROGRAMOWAN I E MAK R... strona 1 PROGRAMOWANIE MAKR W PROGRAMIE EXCEL W JĘZYKU VISUAL BASIC W programie Microsoft Excel można często powtarzane czynności zautomatyzować przy użyciu tzw.

Bardziej szczegółowo

Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA

Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA 1 Rozdział 1 Praca z makropoleceniami Opis: W tym rozdziale kursanci przechodzą przez wprowadzenie do programowania

Bardziej szczegółowo

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się

Bardziej szczegółowo

Wstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel

Wstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel Wstęp do programowania Procedury i funkcje Piotr Chrząstowski-Wachtel Po co procedury i funkcje? Gdyby jakis tyran zabronił korzystać z procedur lub funkcji, to informatyka by upadła! Procedury i funkcje

Bardziej szczegółowo

Instrukcje podsumowanie. Proste: - przypisania - wejścia-wyjścia (read, readln, write, writeln) - pusta - po prostu ; (średnik) Strukturalne:

Instrukcje podsumowanie. Proste: - przypisania - wejścia-wyjścia (read, readln, write, writeln) - pusta - po prostu ; (średnik) Strukturalne: Instrukcje podsumowanie Proste: - przypisania - wejścia-wyjścia (read, readln, write, writeln) - pusta - po prostu ; (średnik) Strukturalne: - grupująca end - warunkowa if

Bardziej szczegółowo

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Instytut Mechaniki i Inżynierii Obliczeniowej  Wydział Mechaniczny Technologiczny Politechnika Śląska Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Języki programowania z programowaniem obiektowym Laboratorium

Bardziej szczegółowo

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD Języki C i C++ Wykład: 2 Wstęp Instrukcje sterujące 1 dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD programowania w C++ Instrukcje sterujące 2 Pętla for for ( instrukcja_ini ; wyrazenie_warunkowe

Bardziej szczegółowo

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu

Bardziej szczegółowo

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

Pętle. for, while, do... while, foreach. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Pętle for, while, do... while, foreach Jeszcze o operatorach... Skrócone operatory arytmetyczne przykład x +=

Bardziej szczegółowo

Język C, tablice i funkcje (laboratorium, EE1-DI)

Język C, tablice i funkcje (laboratorium, EE1-DI) Język C, tablice i funkcje (laboratorium, EE1-DI) Opracował: Tomasz Mączka (tmaczka@kia.prz.edu.pl) Wstęp (tablice) Tablica to uporządkowany ciąg elementów tego samego typu, zajmujących ciągły obszar pamięci.

Bardziej szczegółowo

Rozdzia l 3. Laboratorium 3. danych zawierajac

Rozdzia l 3. Laboratorium 3. danych zawierajac Rozdzia l 3 Laboratorium 3 3.1. Tablice Tablica jest struktura danych zawierajac a zmienne tego samego typu. CLR środowiska.net Framework wspiera tworzenie tablic jedno oraz wielo wymiarowych. 3.1.1. Tablice

Bardziej szczegółowo

Matlab, zajęcia 3. Jeszcze jeden przykład metoda eliminacji Gaussa dla macierzy 3 na 3

Matlab, zajęcia 3. Jeszcze jeden przykład metoda eliminacji Gaussa dla macierzy 3 na 3 Matlab, zajęcia 3. Pętle c.d. Przypomnijmy sobie jak działa pętla for Możemy podać normalnie w Matlabie t=cputime; for i=1:20 v(i)=i; e=cputime-t UWAGA: Taka operacja jest bardzo czasochłonna i nieoptymalna

Bardziej szczegółowo

Wstęp do Programowania, laboratorium 02

Wstęp do Programowania, laboratorium 02 Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite

Bardziej szczegółowo

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów Operatory są elementami języka C++. Istnieje zasada, że z elementami języka, takimi jak np. słowa kluczowe, nie można dokonywać żadnych zmian, przeciążeń, itp. PRZECIĄŻANIE OPERATORÓW Ale dla operatorów

Bardziej szczegółowo

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Procedury i funkcje. Programowanie komputerowe

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Procedury i funkcje. Programowanie komputerowe Wydział Zarządzania AGH Katedra Informatyki Stosowanej Procedury i funkcje Programowanie komputerowe Procedury i funkcje Wprowadzenie Budowa procedur i funkcji Przekazywanie parametrów Funkcje wbudowane

Bardziej szczegółowo

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PRZEKROJOWY.

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PRZEKROJOWY. Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PRZEKROJOWY SZKOLENIE JEST DLA OSÓB, KTÓRE: chcą podnieść swoje umiejętności pracy w języku VBA do poziomu średniozaawansowanego, nigdy wcześniej

Bardziej szczegółowo

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania Celem ćwiczenia jest zapoznanie studentów z najprostszą dynamiczną strukturą

Bardziej szczegółowo

Nawigacja po długim dokumencie może być męcząca, dlatego warto poznać następujące skróty klawiszowe

Nawigacja po długim dokumencie może być męcząca, dlatego warto poznać następujące skróty klawiszowe Zestawienie wydatków rok 2015 1 Wstaw numerację stron. Aby to zrobić przejdź na zakładkę Wstawianie i w grupie Nagłówek i stopka wybierz Numer strony. Następnie określ pozycję numeru na stronie (na przykład

Bardziej szczegółowo

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1 Podstawy programowania, Poniedziałek 30.05.2016, 8-10 Projekt, część 1 1. Zadanie Projekt polega na stworzeniu logicznej gry komputerowej działającej w trybie tekstowym o nazwie Minefield. 2. Cele Celem

Bardziej szczegółowo

Podstawy MATLABA, cd.

Podstawy MATLABA, cd. Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki Przetwarzanie Sygnałów Studia Podyplomowe, Automatyka i Robotyka Podstawy MATLABA, cd. 1. Wielomiany 1.1. Definiowanie

Bardziej szczegółowo

Pascal - wprowadzenie

Pascal - wprowadzenie Pascal - wprowadzenie Ogólne informacje o specyfice języka i budowaniu programów Filip Jarmuszczak kl. III c Historia Pascal dawniej jeden z najpopularniejszych języków programowania, uniwersalny, wysokiego

Bardziej szczegółowo

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

Każde wykonanie bloku instrukcji nazywamy pojedynczym przebiegiem lub iteracją pętli. Część XIII C++ Czym jest pętla? Pętla jest blokiem instrukcji, które wykonywane są w kółko (czyli po wykonaniu ostatniej instrukcji z bloku komputer wykonuje ponownie pierwszą instrukcję, później drugą

Bardziej szczegółowo

Blockly Kodowanie pomoc.

Blockly Kodowanie pomoc. 1 Blockly Kodowanie pomoc. Słowniczek: Zmienna posiada nazwę wywoływaną w programie oraz miejsce na przechowywanie wartości. Instrukcja warunkowa pozwala na wykonanie instrukcji w zależności od warunku

Bardziej szczegółowo

Metody Metody, parametry, zwracanie wartości

Metody Metody, parametry, zwracanie wartości Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Metody Metody, parametry, zwracanie wartości Metody - co to jest i po co? Metoda to wydzielona część klasy, mająca

Bardziej szczegółowo

lekcja 8a Gry komputerowe MasterMind

lekcja 8a Gry komputerowe MasterMind lekcja 8a Gry komputerowe MasterMind Posiadamy już elementarną wiedzę w zakresie programowania. Pora więc zabrać się za rozwiązywanie problemów bardziej złożonych, które wymagają zastosowania typowych

Bardziej szczegółowo

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

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,

Bardziej szczegółowo

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

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek]. ABAP/4 Instrukcja IF Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek]. [ELSEIF warunek. ] [ELSE. ] ENDIF. gdzie: warunek dowolne wyrażenie logiczne o wartości

Bardziej szczegółowo

Bloki anonimowe w PL/SQL

Bloki anonimowe w PL/SQL Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia

Bardziej szczegółowo

Ćwiczenie 1. Wprowadzenie do programu Octave

Ćwiczenie 1. Wprowadzenie do programu Octave Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie sygnałów laboratorium ETD5067L Ćwiczenie 1. Wprowadzenie do programu Octave Mimo że program Octave został stworzony do

Bardziej szczegółowo