Algorytmy
Spis treści:
vðCo to jest algorytm
vðSchemat blokowy
vðInstrukcje sterujÄ…ce
vðTablice jednowymiarowe
vðTablice wielowymiarowe
ProwadzÄ…cy
mgr inż. Agnieszka Godula, pok.715, B5
Co to jest algorytm?
Jak go przedstawić?
lð Algorytm to skoÅ„czony, uporzÄ…dkowany ciÄ…g jasno zdefiniowanych
czynności, koniecznych do wykonania pewnego zadania. Algorytm to dokładny
przepis.
lð Program to ciÄ…g instrukcji, zapisanych w jÄ™zyku zrozumiaÅ‚ym dla komputera.
Ten ciÄ…g instrukcji realizuje jakiÅ› algorytm.
lð W jaki sposób można przedstawić algorytm?
Skrzynki START i STOP wskazujÄ…
początek i koniec każdego algorytmu. Ze
skrzynki START wychodzi tylko jedna
droga, do skrzynki STOP wchodzi, co
najmniej jedno połączenie.
W skrzynce instrukcyjnej umieszcza siÄ™
polecenia do wykonania (instrukcje) -
podstawienie, obliczenie,
wprowadzenie wartości.
Jak przedstawić algorytm? C.d.
W skrzynce warunkowej umieszcza
się warunek, który decyduje o
wyborze dalszej drogi
postępowania. Ze skrzynki
wychodzą dwa połączenia: TAK
(wybierane, gdy warunek jest
spełniony), NIE (gdy warunek nie
jest spełniony).
W skrzynce wejścia/wyjścia
umieszcza siÄ™ wprowadzane dane
lub wyprowadzane wyniki. Ze
skrzynki wychodzi tylko jedno
połączenie.
Instrukcje sterujÄ…ce instrukcja warunkowa
lð Instrukcje sterujÄ…ce to specjalne polecenia, dziÄ™ki którym można niejako
kierować wykonywaniem programu. Wyróżniamy instrukcje warunkowe i
bezwarunkowe.
lð Instrukcja if (instrukcja warunkowa)
lð InstrukcjÄ™ if (jeÅ›li) stosuje siÄ™ w sytuacji, gdy wykonanie pewnych czynnoÅ›ci jest
od postawionego warunku lub wyrażenia.
if (warunek) instrukcja;
Zapis ten oznacza, że jeśli warunek jest spełniony wykonaj instrukcję. Gdy
warunek nie został spełniony wtedy instrukcja umieszczona za if zostanie
pominięta i nastąpi przejście do następnej linii kodu. Jeżeli warunek
zostanie spełniony zostanie wykonana tylko jedna instrukcja znajdująca się
bezpośrednio za if. Średnik stanowi zakończenie instrukcji.
Np.
if (warunek)
Teraz, jeśli warunek zostanie spełniony
if (zmienna==0) {
{
zostanÄ… wykonane wszystkie instrukcje
instrukcja1;
instrukcja1;
będące między klamrami. W klamrach
instrukcja2; }
instrukcja2;
można umieścić dowolną ilość instrukcji.
else if (zmienna==1) {
instrukcja3; Można też umieścić tam inne instrukcję
instrukcja3;
if, tylko pamiętać należy o zamykaniu
instrukcja4;
instrukcja4; }
klamer.
}
Instrukcje sterujące pętle (pętla while)
lð PÄ™tla to pewien fragment kodu, który jest wykonywany wielokrotnie.
lð PÄ™tla while
lð While oznacza dopóki, podczas gdy. PÄ™tla while jest wykonywana
dopóki postawiony warunek jest spełniony. Taka pętla może zawierać
jedną lub więcej instrukcji. Np.
while (5>3) instrukcja;
lð Taka pÄ™tla raczej nie znajdzie zastosowania w praktyce. Warunek jest
zawsze ten sam, zawsze jest on prawdziwy. Oznacza to, że pętla a tym
samym będąca w pętli instrukcja będzie wykonywana w nieskończoność.
Wówczas należy w pętli użyć zmiennej.Np.
while (zmienna !=0) instrukcja;
lð Tutaj instrukcja bÄ™dzie wykonywana dopóki wartość zmiennej bÄ™dzie
różna od 0. Jeżeli pętla zawiera kilka instrukcji istnieje możliwość
umieszczenia ich w bloku. Np.
while (zmienna < 100)
{
Warunek jest tutaj sprawdzany w momencie
instrukcja_1;
wchodzenia do pętli. Oznacza to, że jeśli na początku
instrukcja_2;
nie zostanie on spełniony to pętla nie wykona się
instrukcja_3;
nawet jeden raz!
}
Instrukcje sterujące pętle (pętla do while)
lð PÄ™tla do while
lð Zasadnicza różnica miÄ™dzy tÄ… pÄ™tla a pÄ™tlÄ… while jest taka, że tutaj
nastąpi przynajmniej jeden obieg. Pierwszy obieg jest niezależny od
warunku, ponieważ jego sprawdzenie nastąpi dopiero na końcu. Np.
do
{
instrukcja_1;
instrukcja_2;
instrukcja_3;
}
while (zmienna < 10);
lð PÄ™tle do while stosowane sÄ… najczęściej w sytuacjach, gdy nieznana
jest ilość obiegów.
Instrukcje sterujące pętle (pętla for)
lð PÄ™tla for
lð PÄ™tla for jest stosowana w sytuacjach, gdy można okreÅ›lić bliżej ile razy bÄ™dzie
ona powtarzana. SÅ‚owo for oznacza dla. Np.
for (wyrażenie_początek; warunek; instrukcja_co_obieg)
{
instrukcja_1;
instrukcja_2;
instrukcja_3;
}
Przykład
for (int i=0; i<100; i++)
{
instrukcja_1;
instrukcja_2;
instrukcja_3;
}
Instrukcje sterujÄ…ce schematy blokowe
lð C++
lð C++
If (warunek)
while (warunek)
{
{
&
&
&
&
}
}
NIE TAK
NIE TAK
i
iA=b
A=b
STOP
i=i+1
STOP
Instrukcje sterujÄ…ce schematy blokowe c.d.
lð C++
lð C++
For (i=0; iDo {
{
&
&
&
&
while (warunek) }
}
i=0
i=0
NIE TAK
iiA=a
A=b
A=b
i=i+1
i=i+1
i=i+1
STOP
STOP
NIE TAK
iSTOP
Tablice
lð TablicÄ… nazywamy zÅ‚ożonÄ… strukturÄ™ danych, która zawiera zbiór
elementów tego samego typu.
Wyróżniamy:
lð tablice jednowymiarowe
lð tablice wielowymiarowe
Tablice jednowymiarowe
lð Tablica jest to zbiór elementów tego samego typu. Każdy element
tablicy jest identyfikowany przez jego numer (indeks). Każdy element
tablicy posiada swoją wartość. Oto tablica t zawierająca 5 elementów:
Do poszczególnych elementów tablicy uzyskujemy dostęp poprzez podanie
nazwy tablicy oraz w nawiasach kwadratowych wartość indeksu ( numer
żądanego elementu).
I tak w naszej tablicy o nazwie t:
t [1] = 5
t [2] =11
t [3] =8
t [4] =3
t [5] =2
Element t [i] dla i równego 4 wynosi 3, dla i równego 2 wynosi 11.
Tablice jednowymiarowe
Schemat blokowy: wczytywanie elementów tablicy
lð Ponieważ tablica ma k- elementów, a wiÄ™c k- razy nastÄ…pi wczytywanie
elementu, stÄ…d zastosowanie iteracji.
Spr. Dla k=5
i=4+1=5
i=1
5<=5 tak
1<=5 tak
Podaj 2
Podaj 5
T[5]:=2
T[1]:=5
i=5+1=6
i=1+1=2
6<=5 nie
2<=5 tak
STOP
Podaj 11
T[2]:=11
i=2+1=3
3<=5 tak
Podaj 8
T[3]:=8
i=3+1=4
4<=5 tak
Podaj 3
T[4]:=3
Tablice jednowymiarowe
Schemat blokowy: wypisujÄ…cy elementy tablicy
lð Algorytm wypisujÄ…cy elementy tablicy k- elementowej.
Tablice jednowymiarowe
Schemat blokowy: liczący średnią arytmetyczną elementów tablicy
Tablice jednowymiarowe
Schemat blokowy: wczytuje elementy i drukuje w odwrotnej kolejności
Wczytaj elementy do tablicy k- elementowej, a następnie wydrukuj je w
odwrotnej kolejności.
Tablice wielowymiarowe
Do poszczególnych elementów tablicy uzyskujemy dostęp poprzez podanie nazwy
tablicy oraz w nawiasach kwadratowych wartość indeksu ( numer żądanego
elementu). I tak w naszej tablicy o nazwie t zapis t[3,4] oznacza element w trzecim
wierszu i czwartej kolumnie, czyli element o wartości =3.
t [1,1] = 2
t [1,2] =6
t [1,3] =11
t [1,4] =0
t [2,1] =7
Element t [i, j] dla i równego 2 i j równego 2 wynosi 5.
Tablice wielowymiarowe
Schemat blokowy: wypełniający tablicę kwadratową k x k
Tablice wielowymiarowe
Schemat blokowy: SzukajÄ…cy w tablicy m x n element maksymalny. WypisujÄ…cy
jego położenie i wartość.
Wyszukiwarka
Podobne podstrony:
informatyka algorytmy cwiczenia bogdan buczek ebook
Technologie informatyczne 6 algorytmy 1
07 Algorytmy cwiczenia przygotowujace
Analiza Algorytmów Ćwiczenia
Algorytmy cwiczenia
D Harel Rzecz o istocie informatyki Algorytmika
więcej podobnych podstron