POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań Sposoby reprezentowania algorytmów Lista kroków Schemat blokowy Drzewo algorytmu Program w języku programowania (C++) Algorytmy liniowe Algorytmy warunkowe POJĘCIE ALGORYTMU Algorytm jest to precyzyjny.

Download Report

Transcript POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań Sposoby reprezentowania algorytmów Lista kroków Schemat blokowy Drzewo algorytmu Program w języku programowania (C++) Algorytmy liniowe Algorytmy warunkowe POJĘCIE ALGORYTMU Algorytm jest to precyzyjny.

Slide 1

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 2

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 3

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 4

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 5

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 6

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 7

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 8

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 9

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 10

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 11

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 12

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 13

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 14

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 15

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 16

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 17

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 18

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 19

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 20

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 21

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec


Slide 22

POJĘCIE ALGORYTMU
Pojęcie algorytmu
Etapy rozwiązywania zadań
Sposoby reprezentowania algorytmów
Lista kroków
Schemat blokowy
Drzewo algorytmu

Program w języku programowania (C++)

Algorytmy liniowe
Algorytmy warunkowe

POJĘCIE ALGORYTMU
Algorytm jest to precyzyjny opis sposobu rozwiązania
określonego zadania lub osiągnięcia jakiegoś celu.

Algorytm - w matematyce oraz informatyce skończony,
uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego rodzaju zadań.

Algorytm ma przeprowadzić system z pewnego stanu
początkowego do pożądanego stanu końcowego.

POJĘCIE ALGORYTMU
Algorytm jest dokładnym przepisem na rozwiązanie
problemu lub osiągnięcie jakiegoś celu, realizowanym

w skończonej liczbie kroków.
Istnieje wiele sposobów rozwiązania danego zadania, stąd
każdemu problemowi odpowiada wiele metod
prowadzących do prawidłowych wyników.

POJĘCIE ALGORYTMU

Pojęcie algorytm pochodzi od brzmienia fragmentu
nazwiska arabskiego matematyka i astronoma
Muhammada ibn Musa Al-Chorezmi’ego,
uznawanego za prekursora obliczeniowych metod
w matematyce. Żył na przełomie VIII i IX wieku i to on
upowszechnił system dziesiętny i stosowanie zera jako
symbolu oznaczającego „nic”.

ETAPY ROZWIĄZYWANIA ZADAŃ
1. Określenie specyfikacji zadania
2. Zbadanie, czy analizowany problem ma rozwiązanie
3. Zapisanie algorytmu w wybranej postaci (notacji)

4. Analiza poprawności
5. Wykonanie obliczeń na komputerze (testowanie
programu)
6. Analiza własności wybranego algorytmu

ETAPY ROZWIĄZYWANIA ZADAŃ
1.

Określenie specyfikacji zadania:

Dane (dane wejściowe)
2. Wyniki (dane wyjściowe)
Określamy dane wejściowe, wyniki, podajemy ich typ (l. rzeczywiste,
całkowite itp.)
1.

2.

Zbadanie, czy analizowany problem ma rozwiązanie oraz wybór
algorytmu.

Istnieje wiele sposobów wykonania danego zadania, z czego wynika,
że można skonstruować wiele algorytmów rozwiązujących dany
problem.

ETAPY ROZWIĄZYWANIA ZADAŃ
3.

Zapisanie algorytmu w wybranej postaci (notacji)







4.

Opis słowny
Lista kroków
Pseudokod
Schemat blokowy
Drzewo algorytmu
Program

Analiza poprawności (poprawność alg.)

Algorytm jest poprawny, jeśli dla każdych danych wejściowych jest
skończony, a wyniki są poprawne – zgodne ze specyfikacją zadania.

ETAPY ROZWIĄZYWANIA ZADAŃ
5.

Wykonanie obliczeń na komputerze (testowanie programu)

Testowanie programu, który jest implementacją algorytmu, dla różnych
danych. Algorytm powinien działać dla dowolnych danych wejściowych
dając poprawne wyniki.

6.

Analiza własności wybranego algorytmu

Ocena efektywności przyjętego rozwiązania, złożoności obliczeniowej
(czasowej i pamięciowej) oraz błędów zaokrągleń wynikających z
obliczeń na liczbach przybliżonych.

SPOSOBY REPREZENTOWANIA ALGORYTMÓW

Lista kroków
 Schemat blokowy
 Drzewo algorytmu
 Program w języku programowania


Algorytm w postaci Listy kroków
Lista kroków jest opisem - instrukcją wykonania
czynności opisanych kolejno w punktach.
Przykład. Skonstruuj algorytm na obliczenie sumy dwóch
dowolnych liczb całkowitych.

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź) dwie dowolne liczby
całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Algorytm w postaci Schematu Blokowego

Schemat blokowy
jest graficzną
reprezentacją słownego
zapisu algorytmu.

Algorytm w postaci Drzewa Algorytmu

Drzewo algorytmu rozwiązujące równanie liniowe ax+b=0

Algorytm przedstawiony w Języku Programowania
Aby przedstawić algorytm w postaci programu
(czyli zapisany w języku programowania) trzeba go
zbudować z ciągu instrukcji określonego języka
programowania.
//algorytm obliczający sumę n kolejnych liczb
naturalnych: 1, 2, ..., n (n>0)
#include
using namespace std;
main()
{
int n, s;
cout<<"podaj n: ";
cin>>n;
s=n*(n+1)/2;
cout<<"s = "<//system("pause");
return 0;
}

Algorytm liniowy


algorytm składający się z ciągu instrukcji, które
są wykonywane jedna po drugiej w kolejności,
jaka wynika z ich następstwa w zapisie.
Nazywany jest również algorytmem
sekwencyjnym. Realizuje jeden ciąg działań
sekwencyjną (blok po bloku).



Cechy algorytmu liniowego:


nie sprawdza się żadnych warunków



nie przemieszcza się w inne niż kolejne miejsca algorytmu



nie wraca się do wcześniejszych punktów lub bloków
algorytmu.

Algorytm warunkowy





Algorytm z warunkami charakteryzuje się
realizacją kilku ciągów działań,
występowaniem sytuacji warunkowych
(jednej lub więcej).
Ich wynik decyduje o wyborze danego ciągu
działań.
Prezentowanie algorytmu z warunkami
w schemacie blokowym jest bardziej przejrzyste
niż w liście kroków, lepiej widoczne są przejścia
w zależności od spełnienia bądź niespełnienia
warunku.

Lista kroków

Specyfikacja:
 Dane
 Wynik
 Lista kroków
(instrukcji)

algorytm na obliczenie sumy
dwóch liczb

Dane: a, b dowolne liczby całkowite.
Wynik: s – suma dwóch liczb obliczona ze
wzoru s=a+b.
Krok 1. rozpocznij algorytm.
Krok 2. Wczytaj (podaj lub wprowadź)
dwie dowolne liczby całkowite a, b.
Krok 3. Oblicz sumę ze wzoru s=a+b.
Krok 4. Wypisz wynik sumy s.
Krok 5. Zakończ algorytm.

Schemat blokowy – Bloki graniczne


Skrzynka START ma tylko jedno
połączenie wychodzące a skrzynka
STOP tylko jedno połączenie
dochodzące.



Wewnątrz skrzynki umieszcza się
napis START, POCZĄTEK,
KONIEC, STOP.



Schemat może mieć tylko jedną
skrzynkę START oraz jedną
skrzynkę STOP.

START

STOP

Schemat blokowy – blok Wejścia-Wyjścia

WE / WY



Skrzynka odpowiada za wprowadzanie danych
i wyprowadzanie, wyświetlanie wyników
i komunikatów.



Blok ma jedno połączenie na wejście i jedno na
wyjście



Wyświetlenie danych tekstowych obejmujemy
cudzysłowem „podałeś złą daną”

Schemat blokowy – blok operacyjny

x=10



Skrzynka zawiera operacje, działanie (jedno lub
więcej) najczęściej arytmetyczne
(oraz przypisanie wartości).



Blok ma jedno połączenie na wejście i jedno na
wyjście

Schemat blokowy – blok warunkowy

a>0

T



Inaczej blok warunkowy



Skrzynka określa wybór jednej z dwóch możliwych
dróg działania



Gdy warunek (test logiczny) jest prawdziwy,
idziemy drogą na T (Tak), w przeciwnym razie
idziemy drogą Nie (gałąź nieoznaczona).

Schemat blokowy - przykład


Schemat blokowy na
obliczenie iloczynu dwóch
liczb.



Jest to algorytm liniowy.

Koniec