Przeczytaj
Różne typy algorytmów
Utrwalmy podstawowe informacje na temat algorytmów liniowych i rozgałęzionych.
Algorytm liniowy:
występuje jeden możliwy ciąg instrukcji,
czynności wykonywane są jedna po drugiej,
nie zawiera instrukcji warunkowych.
Algorytm rozgałęziony:
algorytm z warunkami,
kolejna instrukcja w algorytmie może zależeć od spełnienia bądź niespełnienia określonego warunku,
istnieje kilka alternatywnych ciągów instrukcji,
schemat blokowy algorytmu tego typu zawiera bloki warunkowe w postaci rombu z dwoma wyjściami.
Wspomnieliśmy o prostym algorytmie słodzenia herbaty. Przypomnijmy sobie jego budowę przedstawioną za pomocą schematu blokowego.
Ten sam ciąg instrukcji powtarzany jest kilkakrotnie. Wielokrotne powtarzanie tych samych czynności nazywamy iteracjąiteracją.
Problem słodzenia herbaty jest mało skomplikowany, zastosowanie iteracji nie wpływa znacząco na jego czytelność. Może natomiast skrócić zapis (tak w przypadku pseudokodu, schematu blokowego, jak i języków programowania).
W algorytmie iteracyjnym wykorzystujemy bloki warunkowe występujące w algorytmach rozgałęzionych. Kolejna instrukcja zależy od spełnienia bądź niespełnienia określonego warunku. Oprócz warunku, w pewnym momencie wykonywania algorytmu nastąpi powrót do jednej z wcześniejszych instrukcji. Taki powrót nazywamy pętląpętlą.
Schemat blokowy algorytmu iteracyjnego
W pierwszym bloku operacyjnym zainicjowana zostaje wartość początkowa iterowanej zmiennej (np. posłodzenie herbaty pierwszą łyżeczką cukru). Dzięki temu możemy zliczać liczbę iteracji. Następnie sprawdzany jest warunek. Jeżeli jest on fałszywy, wychodzimy z pętli i nie powtarzamy więcej operacji w niej zawartych. Natomiast jeżeli warunek będzie spełniony, wykonujemy ciąg odpowiednich instrukcji. Po wykonaniu ciągu instrukcji wracamy do sprawdzenia warunku. Jeżeli jest spełniony, ponownie wykonujemy te same instrukcje itd.
Przeanalizuj schemat blokowy algorytmu słodzenia herbaty wykorzystujący pętlę.
Algorytm iteracyjny wypisujący liczby z podanego przedziału
Za pomocą pseudokodu zapiszemy algorytm iteracyjnyalgorytm iteracyjny wyświetlający na ekranie liczby całkowite z zakresu 10, 25.
Pseudokod algorytmu iteracyjnego możemy zrealizować za pomocą instrukcji iteracyjnych. Pętlę utworzymy z wykorzystaniem słów dopóki .. wykonuj
. Jeżeli wyrażenie
zawarte między dopóki
i wykonuj
będzie prawdziwe, będą wykonywane instrukcje wymienione bezpośrednio pod nimi. Instrukcje te zapiszemy z użyciem wcięcia. Ma to na celu wskazanie, które instrukcje znajdują się w pętli.
Zapiszmy w postaci pseudokodu algorytm wyświetlający na ekranie liczby całkowite z zakresu 10, 25.
W pierwszym wierszu pseudokodu inicjujemy wartość początkową i :=
. To będzie pierwsza liczba wypisana przez algorytm. Następnie tworzymy pętlę, w której sprawdzane jest to, czy i
jest mniejsze lub równe . Jeżeli warunek jest spełniony, wypisujemy wartość i
, a następnie zwiększamy ją o , w celu wypisania kolejnej liczby całkowitej. Instrukcje będą wykonywane, dopóki i
nie przekroczy wartości .
Słownik
algorytm, w którym wykorzystywane są pętle w celu kilkakrotnego powtórzenia ciągu poleceń
wielokrotne wykonywanie tych samych czynności
instrukcja iteracyjna, która umożliwia cykliczne wykonywanie ciągu instrukcji