Algorytmy
Algorytmy
Algorytmy
1. Podstawowe definicje
Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie
określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności do wykonania,
ze wskazaniem ich następstwa.
opis słowny,
lista kroków,
schemat blokowy,
drzewo algorytmu,
pseudokod,
język programowania
Służy do zapisania
wykonywanych operacji na
Prostokąt, w jego wnętrzu zapisujemy
Blok operacyjny przykład działań
wykonywane operacje.
x:= i+1 algebraicznych, operacji
podstawienia itp.
1.2. Pseudokod
Pseudokod jest to połączenie języka naturalnego z elementami języka programowania.
Przykład 1:
Algorytm wczytuje dwie liczby i sprawdza, która jest większa.
Pseudokod:
Start
Wczytaj(a,b)
Jeżeli a>b to
Wypisz(a)
W przeciwnym razie
Wypisz(b)
Koniec
Przykład 2:
Algorytm wczytuje i sumuje n liczb.
Start
Suma:=0
Podaj(n)
i:=0
Dopóki i<n wykonuj:
Wczytaj(a)
Suma := Suma + a
i := i + 1
Wypisz(Suma)
Koniec
Przykład 3:
Algorytm wczytuje i dodaje 10 liczb.
Start
i := 0
Dopóki i<10
Wczytaj(a)
Suma := Suma + a
i := i + 1
Koniec
2. Rodzaje algorytmów:
2.1. Algorytmy liniowe
Algorytm liniowy to taki, w którym nie określono żadnych warunków. Jest też nazywany
sekwencyjnym, gdyż każdy z kroków w tym algorytmie następuje sekwencyjnie, czyli wykonanie
jednej sekwencji powoduje przejście bezpośrednio do następnej.
Przykład
Obliczanie obwodu prostokąta
Algorytm liniowy w postaci listy kroków Algorytm liniowy w postaci schematu blokowego
Dane: bok a i b
Lista kroków:
1. Początek algorytmu
2. Podaj bok a
3. Podaj bok b
4. oblicz obwód: ob:=2*a+2*b
5. Wyprowadź wartość ob
6. Koniec algorytmu
2.2. Algorytmy warunkowe
Algorytm warunkowy to taki, w którym wykonanie instrukcji uzależnione jest od spełnienia lub
niespełnienia warunku.
Przykład
Obliczanie obwodu prostokąta
Algorytm liniowy w postaci listy kroków Algorytm liniowy w postaci schematu blokowego
Dane: bok a i b
Lista kroków:
1. Początek algorytmu
2. Podaj bok a
3. Podaj bok b
4. Czy bok a>0?
jeśli tak idź do kroku 5,
jeśli nie podaj komunikat wyjściowy: "nie
można obliczyć obwodu" i zakończ algorytm.
5. Czy bok b>0?
jeśli tak idź do kroku 6
jeśli nie podaj komunikat wyjściowy: "nie
można obliczyć obwodu" i zakończ algorytm.
6. Oblicz obwód Ob:=2*a+2*b
7. Wyprowadź wartość Ob
6. Koniec algorytmu
k:=0 i k:=k+1
0:=0+1(zmienna k przyjmuje wartość 1)- pierwsze przejście
1:=1+1(zmienna k przyjmuje wartość 2)- drugie przejście
2:=2+1(zmienna k przyjmuje wartość 3)- trzecie przejście
itp.
Jeżeli k osiągnie odpowiednią wartość np.k<n to wówczas pętla zostaje opuszczona i wykonywana
jest dalsza część instrukcji.
Przykład
Pętla jest wykonywana tak długo, aż k osiągnie Warunek jest sprawdzany przed wykonaniem
wartość n instrukcji
Przykład
Najpierw jest wykonywana instrukcja, a Warunek jest sprawdzany na początku, a dopiero
następnie jest sprawdzany warunek. Pętla jest później jest wykonywana instrukcja. Pętla jest
wykonywana, aż do spełnienia warunku. wykonywana tak długo, jak spełniony jest
warunek.
Instrukcja zostanie wykonana przynajmniej jeden
raz bez względu na to, czy warunek jest
spełniony czy nie