algorytmy 04

background image

PWrIIS

Edward Bieleninik

1

PWrIIS

Edward Bieleninik

2

Algorytm – sko czony system reguł okre laj cych kolejno

działa

wykonywanych na okre lonych obiektach (danych) w celu uzyskania rozwi zania
problemu.

Algorytm – ci le okre lona procedura obliczeniowa, która dla wła ciwych

danych wej ciowych

wyprodukuje dane

dane wyj ciowe

zwane wynikiem

działania algorytmu.

Algorytm - definicje

Pochodzenie wyrazu: od nazwiska matematyka perskiego „Al-Khowarizmi” z IX w.
Na łacin zostało przetłumaczone jako Algorismus.

Dane wej.

Dane wyj.

ALGORYTM

PWrIIS

Edward Bieleninik

3

Własno ci algorytmów:

1)

poprawno

– algorytm musi by poprawny

2)

sko czono

– algorytm musi umo liwi rozwi zanie problemu w

sko czonym czasie

3)

zło ono

– mierzy si czasem wykonania i zaj to ci pami ci odniesionych

do wielko ci danych

4)

uniwersalno

PWrIIS

Edward Bieleninik

4

Przykłady problemów algorytmicznych

• Zbadanie czy dana liczba naturalna jest pierwsza

• Znalezienie najwi kszego wspólnego dzielnika dwóch liczb

• Rozkład liczby na czynniki pierwsze

• Uporz dkowanie (posortowanie) ci gu liczb od najmniejszej do najwi kszej

• Rozwi zanie równania kwadratowego

• Rozwi zanie układu równa liniowych

background image

PWrIIS

Edward Bieleninik

5

A

D

E

B

G

H

C

F

Problemy grafowe

• problem komiwoja era

Znale najkrótsz drog umo liwiaj c jednokrotne odwiedzenie wszystkich w złów.

• problem minimalnego pokrycia

Znale najkrótsze poł czenie wszystkich w złów

PWrIIS

Edward Bieleninik

6

A

D

E

B

G

H

C

F

Problem komiwoja era

(przykładowe rozwi zanie)

PWrIIS

Edward Bieleninik

7

A

D

E

B

G

H

C

F

Problem minimalnego pokrycia

(przykładowe rozwi zanie)

PWrIIS

Edward Bieleninik

8

Algorytm – sposoby zapisu

1) opis słowny

Musi by zrozumiały i jednoznaczny.

2) opis w postaci listy kroków

Poszczególne kroki zawieraj opis operacji, które maj by wykonane przez

algorytm. Mog równie wyst pi polecenia zmiany kolejno ci wykonywania

kroków.

3) schemat blokowy

4) program komputerowy

Jest najbardziej cisłym zapisem algorytmu.

background image

PWrIIS

Edward Bieleninik

9

Algorytm - przykłady

Algorytm Euklidesa – znajdowanie najwi kszego wspólnego podzielnika 2 liczb.

Dane s dwie liczby naturalne a, b (a > b).

NWD(a,b):

1.

Je eli b = 0

2.

to Wynik = a

3.

w przeciwnym razie Wynik = NWD(b, a mod b)

NWD(30,21) =
NWD(21, 30 mod 21) = NWD(21,9) =
NWD(9, 21 mod 9) = NWD(9, 3) =
NWD(3, 9 mod 3) = NWD(3, 0) =
3

PWrIIS

Edward Bieleninik

10

Algorytm - przykłady

1.

Wprowad warto ci a, b;

2.

Je eli a<>0 to x=-b/a; Wyprowad x;

W przeciwnym razie Wyprowad „Złe dane”;

3.

Koniec;

1. Algorytm rozwi zania równania liniowego ax + b = 0

a<>0

x= -b/a

Czytaj a, b

Wypisz: Złe dane

K

P

T

N

Wypisz x

PWrIIS

Edward Bieleninik

11

Algorytm - przykłady

2. Algorytm obliczania n!

1. Czytaj n;

2.

silnia =1;

3.

Dla i = 2 do n wykonaj

silnia = silnia*i;

4. Wyprowad silnia;

5.

Koniec;

n! = 1*2*3* ... *n

3! = 1*2*3 = 6 4! = 1*2*3*4 = 3!*4 =
24

n! = (n-1)!*n

silnia=1

i<=n

i=2

silnia=silnia*i

i = i+1

P

T

N

Czytaj n

K

Wy wietl silnia

PWrIIS

Edward Bieleninik

12

Algorytm - przykłady

Obliczy sum ci gu n liczb:

a

1

, a

2

, a

3

, ..., a

n

Czytaj dane

Suma = 0;

Dla i = 1 Do n Wykonaj

Suma = Suma +a

i

Drukuj Suma;

Koniec

Suma=0

i<=n

i=1

Suma=Suma+a

i

P

i=i+1

Drukuj:

Suma, Iloczyn

N

T

Czytaj dane

K

background image

PWrIIS

Edward Bieleninik

13

Algorytm - przykłady

Obliczy sum liczb czytanych z klawiatury.
Czytanie ko czy liczba 0.

Suma = 0;

Czytaj a:

Dopóki a<>0 Wykonaj

Suma = Suma + a;

Czytaj a;

Drukuj Suma;

Suma=0

Czytaj a

a<>0

Suma=Suma+a

Czytaj a

Drukuj Suma

T

N

K

P

PWrIIS

Edward Bieleninik

14

Wprowad

a,b,c

b= 0

x=-c/b

T

N

T

N

N

T

P

K

a=0

delta=b

2

-4ac

Złe dane

Wyprowad x

Wyprowad

x

1

, x

2

a

delta

b

x

2

1

=

delta>=0

Brak

pierwiastków

a

delta

b

x

2

2

+

=

ax

2

+ bx +c = 0

Równanie kwadratowe

PWrIIS

Edward Bieleninik

15

Algorytm – rozwi zanie równania kwadratowego

ax

2

+ bx +c = 0

1.

Czytaj a, b, c

2.

Je eli a = 0 to

Je eli b = 0 to Wyprowad „Złe dane”

W przeciwnym razie x = -c/b; Wyprowad x

W przeciwnym razie

delta = b

2

– 4ac

Je eli delta >= 0 to

Wyprowad

x

1

, x

2

W przeciwnym razie Wyprowad „Brak pierwiastków”

3. Koniec

a

delta

b

x

2

2

+

=

a

delta

b

x

2

1

=

PWrIIS

Edward Bieleninik

16

Algorytm – schemat blokowy

Konwencje dotycz ce schematów blokowych

pocz tek/koniec

operacja we/wy

blok wykonawczy

blok warunkowy

blok zło ony

background image

PWrIIS

Edward Bieleninik

17

Algorytm – sekwencja czynno ci

Czynno 1

Czynno 2

Czynno 3

PWrIIS

Edward Bieleninik

18

Algorytm – warunek „je eli”

Warunek

Czynno 1

Czynno 2

T

N

Warunek

Czynno

T

N

Je eli <warunek> To

Czynno

Je eli <warunek> To

Czynno 1

W przeciwnym razie

Czynno 2

PWrIIS

Edward Bieleninik

19

Algorytm – wybór czynno ci

Czynno 2

Czynno 1

Przeł cznik

Czynno 3

Czynno 4

Wej

Wyj

PWrIIS

Edward Bieleninik

20

Algorytm – iteracje „dopóki” i „powtarzaj”

Warunek

Czynno

T

N

Warunek

Czynno

T

Dopóki <warunek> Wykonaj

Czynno

Powtarzaj

Czynno

A <warunek>

N

background image

PWrIIS

Edward Bieleninik

21

Algorytm – iteracje „dla”

i<=n

Czynno

T

N

i=1

i=i+1

Dla i=1 Do n Wykonaj

Czynno


Wyszukiwarka

Podobne podstrony:
5. Algorytmy (04.11.08), ALGORYTMY
5. Algorytmy (04.11.08), ALGORYTMY
FWD FWD PD pracownia algorytmy 04 - Slanie lozka z chorym przez dwie osoby, skrypt
FWD FWD PD pracownia, algorytmy, 04 Slanie lozka z chorym przez dwie osoby skrypt
04 Algorytm ALS 28Jan06
Z Ćwiczenia 19.04.2008, Zajęcia, II semestr 2008, Algorytmy i struktury danych
04 Algorytmy, Prywatne, Informatyka, Algorytmy
Algorytmy i struktury danych 04 Listy
algorytm obliczen podnosnika srubowego 2013 04 07
04 Algorytmy rastrowe 2005 04 rastrowe
algorytm obliczen podnosnika srubowego 2013 04 07
04 algorytmy klasyczne
Z Wykład 20.04.2008, Zajęcia, II semestr 2008, Algorytmy i struktury danych
29 04 algorytm przeszukiwania binarnego
Wykład 04
04 22 PAROTITE EPIDEMICA

więcej podobnych podstron