ALGORYTMY Elżbieta Fiedziukiewicz ELI 2.0 Kliknij myszą MENU Metody przedstawiania algorytmówschematy blokowe Niezbędny zestaw instrukcji umownego strukturalnego języka programowania Konstruowanie schematów algorytmów za pomocą programu ELI SCHEMATY BLOKOWE Schemat blokowy, traktowany jako algorytm problemu, jest graficznym przedstawieniem instrukcji (operacji) i wzajemnych powiązań między nimi, które określają kolejność wykonywanych akcji. Schemat blokowy jest zbudowany z figur geometrycznych zwanych skrzynkami oraz połączeń między skrzynkami. Oto kilka podstawowych skrzynek zobacz SKRZYNKI PODSTAWOWE START STOP Skrzynki graniczne START/STOP – mają kształt owalu; wskazują początek i koniec wykonywania schematu blokowego. Ze skrzynki START wychodzi tylko jedno połączenie, natomiast skrzynka STOP nie nie ma połączenia wychodzącego DALEJ SKRZYNKI T I Skrzynka operacyjna – jest prostokątem, w którym znajdują się instrukcje. Z tej skrzynki wychodzi tylko jedno połączenie W Skrzynka warunkowa (decyzyjna) – jest rombem, w którym umieszcza się warunek decydujący o dalszej kolejności wykonywania operacji WE / WY N Skrzynka wprowadzania i wyprowadzania informacji – jest równoległobokiem, w którym umieszcza się dane lub wyniki przykłady WE / WY PODAJ (x) PISZ (x) Przykłady Algorytm obliczania sumy S dwóch liczb a i b START PODAJ (a,b) S:= a+b PISZ (S) STOP DALEJ Schemat blokowy programu wyświetlającego kolejne liczby nieparzyste start i:=1 nie i< 20 tak pisz (i) stop i := i+2 INSTRUKCJE INSTRUKCJA PRZYPISANIA INSTRUKCJA WEJŚCIA/WYJŚCIA INSTRUKCJA ZŁOŻONA INSTRUKCJA WARUNKOWA INSTRUKCJE ITERACYJNE * instrukcja powtarzaj * instrukcja dopóki INSTRUKCJA PRZYPISANIA Jest to najprostsza instrukcja w każdym języku programowania. Można ją przedstawić w następujący sposób: Z := W Z oznacza zmienną, natomiast W – wyrażenie Przykłady: X := 5 nadanie zmiennej X wartości 5 I := I + 1 zmiennej I przypisz nową wartość równą poprzedniej wartości „I” powiększonej o „1”. Np.. Jeśli I wynosiło 4, to nową wartością dla I będzie 5. SKRZYNKA OPERACYJNA I := I + 1 INSTRUKCJA WEJŚCIA/WYJŚCIA Instrukcje wejścia/wyjścia – służą do wprowadzania danych oraz wyprowadzania wyników. Podaj (x) wprowadzanie do programu wartości, która zostanie przypisana zmiennej x Pisz (x) wyprowadzenie z programu wyniku, który został przypisany zmiennej x, np.. Jeśli zmiennej x przypisano 5, to taka wartość zostanie wyprowadzona. INSTRUKCJA ZŁOŻONA Jeśli dowolny zbiór (ciąg) instrukcji zostanie poprzedzony słowem POCZĄTEK a zakończony słowem KONIEC, to otrzymamy instrukcję złożoną, traktowaną jako pojedynczą. Słowa te pełnią funkcje podobne do nawiasów i służą do określenia granic danej instrukcji złożonej. POCZĄTEK Instrukcja 1 Instrukcja 2 Instrukcja 3 itd..... KONIEC pojedyncza instrukcja INSTRUKCJA WARUNKOWA Instrukcja warunkowa (decyzyjna) – tego typu instrukcja pozwala dokonać wyboru dalszej akcji. Są dwie takie instrukcje: *instrukcja warunkowa prosta: JEŚLI warunek TO akcja_1 *instrukcja warunkowa z alternatywą: JEŚLI warunek TO akcja_1 W PRZECIWNYM RAZIE akcja_2 Warunek jest wyrażeniem logicznym, któremu przypisuje się wartość logiczną – prawda (Tak) lub fałsz (Nie) W wyrażeniach logicznych używa się dla porównania wyrażeń liczbowych używa się następujących operatorów relacji: = równe <> nierówne (różne) DALEJ SKRZYNKA WARUNKOWA T I <= 20 N INSTRUKCJA WARUNKOWA (C.D.) < mniejsze większe <= mniejsze lub równe >= większe lub równe Mogą w nich również występować operatory logiczne: NIE (NOT) negacja I (AND) iloczyn logiczny LUB (OR) suma logiczna INSTRUKCJA ITERACYJNA „POWTARZAJ” INSTRUKCJE ITERACYJNE – pozwalają zrealizować w programie te same operacje n-razy. Sytuację taką nazywa się pętlą programową, którą można realizować według dwóch różnych metod: *instrukcja powtarzaj POWTARZAJ akcję AŻ warunek Interpretacja tej instrukcji jest następująca: Powtarzaj czynności opisane akcją, aż stwierdzisz, że warunek logiczny jest prawdziwy. Powtarzanie akcji trwa tak długo jak warunek jest fałszywy! Przykład: Ile:= 1 POWTARZAJ Pisz(‘będę grzeczny w szkole’) Ile:= ile+1 AŻ ile > 100 DALEJ INSTRUKCJA ITERACYJNA „DOPÓKI” *instrukcja dopóki DOPÓKI warunek WYKONUJ akcję Interpretacja tej instrukcji jest następująca: Dopóki warunek logiczny jest prawdziwy, wykonuj czynności opisane akcją. W przypadku instrukcji Powtarzaj wykonywana jest akcja, a dopiero potem warunek. Jeśli jest on fałszywy, następuje powrót. W przypadku instrukcji Dopóki najpierw sprawdzany jest warunek i jeśli jest on prawdziwy, dopiero wtedy wykonywana jest akcja. Przykład: DOPÓKI ile<=100 WYKONUJ POCZĄTEK Pisz(‘będę grzeczny w szkole’) ile:= ile+1 KONIEC LABORATORIUM INFORMATYKI Program ELI umożliwia konstruowanie i analizowanie działania algorytmów, przedstawionych w postaci schematów blokowych. Schematy algorytmów układamy z klocków, w których zawarte są podstawowe operacje takie jak: wprowadzanie danych, wykonywanie obliczeń, sprawdzanie warunku, wywoływanie procedury, wyprowadzenie wyniku. Przykład 1: Przykład 2: Już w krótce dokończę projektować slajdy z przykładami z programu ELI przykład 1 2 3 4 5 6 Obliczanie sumy dwóch liczb 1 2 3 4