algorytmy - cba.pl · 2018. 11. 27. · algorytmy author: ministerstwo edukacji narodowej i sportu...
TRANSCRIPT
![Page 1: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/1.jpg)
Algorytmy
wstęp Opracował: Andrzej Nowak
![Page 2: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/2.jpg)
Narysuj algorytm określający kiedy możesz przejść
przez jezdnię.
Czy są
światła
Czy są
pasy
Czy
zielone
przechodź
STÓJ
Czy droga
wolna
przechodź
STÓJ
![Page 3: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/3.jpg)
Zamień algorytm słowny na graficzny
• Mężczyzna płaci składkę roczną w
wysokości 5 zł., chyba że ma mniej niż 25
lat, wówczas składka zostaje obniżona do
polowy.
• Kobieta płaci składkę roczną w wysokości
4 zł., chyba że jest zamężna - płaci
połowę, lub ma mniej niż 21 lat.
![Page 4: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/4.jpg)
mężczyzna
> niż 25 lat
płaci 2,5 zł płaci 5 zł płaci 2 zł płaci 2 zł płaci 4 zł
Czy zamężna
> niż 21 lat
![Page 5: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/5.jpg)
Narysuj schemat algorytmu
odnajdującego największą z trzech
wprowadzonych liczb (a, b, c) A, B, C
A>B
A>C
B>C
A największa C największa C największa B największa
![Page 6: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/6.jpg)
• a = 0 i b = 0 - nieskończenie wiele
rozwiązań
• a = 0 i b = 0 - równanie sprzeczne
• a = 0 jedno rozwiązanie
x = -b / a
Narysuj schemat algorytmu
rozwiązującego równanie liniowe
y = ax+b
![Page 7: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/7.jpg)
a, b , x
a = 0
b = 0
Nieskończenie
wiele rozwiązań
równanie
sprzeczne
jedno
rozwiązanie x
X = -b / a
![Page 8: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/8.jpg)
Narysuj schemat algorytmu
wyznaczającego pierwiastki równania
kwadratowego
• (delta) = b2 - 4 *a *c
• (delta) > 0 - dwa rozwiązania
x1 = -b - sqrt(delta) / 2 *a
x2 = -b + sqrt(delta) / 2 *a
• (delta) = 0 – jedno rozwiązanie
x0 = -b / 2 *a
• (delta) < 0 – brak pierwiastków
![Page 9: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/9.jpg)
a, b , c, x1, x2, x0, D
a = 0
D >0
X1, x2 X = -b / a
D = b*b-4*a*c
X1=-b-sqrt(D)/2*a
X2=-b+sqrt(D)/2*a
D = 0
X0=-b/2*a
x0 Brak
pierwiastków
![Page 10: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/10.jpg)
Struktury sterujące i iteracyjne w
algorytmach
Kolejność wykonywania instrukcji w
algorytmach musi być jednoznaczna .
Steruje się przy pomocy układów instrukcji
zwanych strukturami sterującymi
![Page 11: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/11.jpg)
Rodzaje struktur sterujących w
algorytmach
• Bezpośrednie następstwo ( wykonaj A, a
następnie B)
A
B
![Page 12: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/12.jpg)
• Wybór warunkowy
a. Jeśli Q wykonaj A
Q
A
![Page 13: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/13.jpg)
b. Jeśli Q wykonaj A w przeciwnym
wypadku wykonaj B
Q
A B
![Page 14: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/14.jpg)
Algorytm zawierający tylko następstwo i
wybór może opisywać procesy nie dłuższe
od pewnej ustalonej wielkości, ponieważ
żaden jego fragment nie jest nigdy
wykonywany więcej niż jeden raz.
Opisywanie algorytmów długich procesów
umożliwiają konstrukcje iteracyjne
![Page 15: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/15.jpg)
Rodzaje konstrukcji
iteracyjnych w algorytmach:
![Page 16: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/16.jpg)
1. Iteracja warunkowa (nieograniczona)
a. wykonaj A aż do Q
Q
A
![Page 17: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/17.jpg)
x, s
a = 0
x = -51
X
s = 0
s = s + x
s
Narysuj schemat algorytmu
obliczającego sumę liczb
parzystych. Liczba -51 kończy
działanie algorytmu. Zastosuj
iterację (wykonuj A aż do Q)
X mod 2 =0
Sprawdzenie czy liczba jest
parzysta
![Page 18: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/18.jpg)
b. dopóki Q wykonuj A
Q
A
![Page 19: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/19.jpg)
x, s
a = 0
x <> -51
X
s = 0
s = s + x
s
Narysuj schemat algorytmu
obliczającego sumę liczb
parzystych. Liczba -51 kończy
działanie algorytmu. Zastosuj
iterację (dopóki Q wykonuj A)
X mod 2 =0
Sprawdzenie czy liczba jest
parzysta
![Page 20: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/20.jpg)
2. iteracja ograniczona
(wykonaj A dokładnie N razy)
od i=1 do N
Tab [ i ]
Pierwszy
sposób
![Page 21: Algorytmy - cba.pl · 2018. 11. 27. · Algorytmy Author: Ministerstwo Edukacji Narodowej i Sportu Created Date: 9/26/2012 11:13:09 PM](https://reader035.vdocuments.site/reader035/viewer/2022062609/60ffb8640334f757931e4702/html5/thumbnails/21.jpg)
Drugi
sposób
i = 1
i <= n
Tab [ i ]
i = i + 1