Algorytmy – różne przykłady

Post on 02-Feb-2016

143 views 0 download

description

Algorytmy Marek Pudełko. Algorytmy – różne przykłady. Algorytm przechodzenia przez jezdnię. Stań na krawędzi chodnika Popatrz w lewo. Jeśli jedzie auto to poczekaj. Wróć do punktu 2. Jeśli nic nie jedzie z lewej strony przejdź do punktu 3. Popatrz w prawo. - PowerPoint PPT Presentation

Transcript of Algorytmy – różne przykłady

Algorytmy – różne przykłady

Algorytmy

Marek Pudełko

2

3

Algorytm przechodzenia przez jezdnię

1. Stań na krawędzi chodnika

2. Popatrz w lewo.a) Jeśli jedzie auto to poczekaj. Wróć do punktu 2.

b) Jeśli nic nie jedzie z lewej strony przejdź do punktu 3.

3. Popatrz w prawo.a) Jeśli jedzie auto to poczekaj. Wróć do punktu 3.

b) Jeśli nic nie jedzie z prawej strony przejdź do punktu 4.

4. Przejdź przez jezdnię.

4

Algorytm przechodzenia przez jezdnię

Stań na krawędzi chodnika

Popatrz w lewą stronę. Czy jedzie auto?

Popatrz w prawą stronę. Czy jedzie auto?

Przejdź przez jezdnię.

TAK

NIE

TAK

NIE

5

Algorytm przechodzenia przez jezdnię

Stań na krawędzi chodnika

Start

Czy jedzie auto?

Czy jedzie auto?

Przejdź przez jezdnię

Stop

Tak

Tak

Nie

Nie

Popatrz w lewą stronę

Popatrz w prawą stronę

6

Ćwiczenia

1. Napisz algorytm przechodzenia przez jezdnię na światłach.

7

Algorytm obsługi lampy

1. Czy lampa jest włączona?a) Jeśli nie włącz ją. Przejdź do następnego punktu.

2. Czy żarówka jest sprawna?a) Jeśli nie zmień ją. Przejdź do następnego punktu.

3. Korzystaj z lampy

4. Koniec algorytmu

8

Algorytm obsługi lampy

Włącz lampę

Start

Czy lampa jest włączona?

Korzystaj z lampy

Stop

Tak

Nie

Zmień żarówkę

Czy żarówka jest sprawna?

Tak

Nie

9

Algorytm dodawania

1. Start algorytmu

2. Przygotuj dane: a,b,c- liczby całkowite

3. Wczytaj a

4. Wczytaj b

5. Dodaj a i b, a wynik wpisz do c

6. Wypisz c

7. Koniec algorytmu

10

Algorytm dodawania

a,b,c: liczby całkowite

Start

c → a + b

Stop

Read (a)

Read (b)

Write (c)

11

Ćwiczenia

1. Napisz algorytm:a) Odejmowania

b) Mnożenia

2. Napisz algorytm liczący:a) Pole koła

b) Pole trójkąta

c) Pole prostokąta

d) Pole kwadratu

12

Ćwiczenia

1. Napisz algorytm liczący średnią z 3 wczytanych liczb

2. sa) Odejmowania

b) Mnożenia

3. Napisz algorytm liczący:a) Pole koła

b) Pole trójkąta

c) Pole prostokąta

d) Pole kwadratu

13

Algorytm dzielenia

1. Start algorytmu

2. Przygotuj dane:• a,b- liczby całkowite

• c- liczby rzeczywiste

3. Wczytaj a

4. Wczytaj ba) Jeśli b jest równe 0, wróć do punktu 4

b) Jeśli b jest różne od 0, idź do punktu 5.

5. Podziel a przez b, a wynik wpisz do c

6. Wypisz c

7. Koniec algorytmu

14

Algorytm dzielenia

a,b: liczby całkowitec: liczba rzeczywista

Start

c → a / b

Stop

Read (a)

Read (b)

Write (c)

b = 0Tak

Nie

15

Ćwiczenia1) Napis algorytm pierwiastkowania

16

Algorytm wyliczania modułu z liczby1. Start algorytmu

2. Przygotuj dane:• x- liczba rzeczywista

3. Czy (x >0)?

a) Jeśli TAK napisz x i przejdź do punktu 4

b) Jeśli NIE napisz -x i przejdź do punktu 4.

4. Koniec algorytmu

17

Wyliczanie modułu z liczbyStart

Czytaj x

x >= 0

Pisz x

Koniec

Pisz -xTak

Nie

18

1) Napisz algorytm liczący równanie:a) c=|x|+5*x

b) c=|x2|+|x|

c) c=|2x|+x

2) Napisz algorytm sprawdzania parzystości liczb• (funkcja mod i % nie działa w magicznych bloczkach)

Ćwiczenia

19

Algorytm porównywania liczb1. Start algorytmu

2. Przygotuj dane:• a,b- liczby całkowite

3. Wczytaj a

4. Wczytaj b

5. Czy (a = b)?

a) Jeśli TAK napisz „równe” i przejdź do punktu

b) Jeśli NIE przejdź do punktu 6, idź do punktu 5.

6. Czy (a > b)?

a) Jeśli TAK napisz „a większe od b” i przejdź do punktu 7

b)Jeśli NIE napisz „b większe od a” i przejdź do punktu 7.

7. Koniec algorytmu

20

Algorytm porównywania liczb

a,b: liczby całkowite

Start

Stop

Read (a)

Read (b)

Write (‘b jest większe’);

a = bTak

Nie

Write (‘równe’)a > bTak

NieWrite (‘a jest większe’);

21

1) Napisz algorytm sprawdzający czy liczba jest dodatnia, ujemna czy równa zero.

2) Napisz algorytm wczytujący trzy liczby i sprawdzający, która jest z nich największa.

3) Napisz algorytm wyliczający pierwiastki równania kwadratowego.

1) Algorytm ma wczytać a,b,c; wliczyć deltę i podać x lub x1,x2.

Ćwiczenia

22

Algorytm pętli1. Start algorytmu

2. Przygotuj dane:• i - liczby całkowite

3. i=1

4. Czy (i > 10)?

a) Jeśli TAK przejdź do punktu 8

b) Jeśli NIE idź do punktu 5.

5. Napisz i

6. i=i+1

7. Idź do punktu 4

8. Koniec algorytmu

23

Algorytm pętli

i: liczby całkowite

Start

StopWrite(i)

i > 10Tak

Nie

Tak

Nie

i=1

i= i+1

24

1) Napisz algorytm wypisujący w pętli liczby od 1 do n. n wczytujemy z zewnętrz.

2) Napisz algorytm wypisujący w pętli liczby od n do 1.

3) Napisz algorytm sumujący liczby od 1 do n. n wczytujemy z zewnętrz.

4) Napisz algorytm wyliczający silnię n.

Ćwiczenia

25

Start

Stop

Read (n)

licznik>n

Write (a)

licznik=1a=1

Tak

Nie

a=a*licznik

licznik=licznik+1

26

Start

Stop

Read (n)

licznik>n

Write (a)

licznik=1a=0

Tak

Nie

a=a+licznik

licznik=licznik+1

27

1) Napisz algorytm wczytujący liczbę n.

• Jeśli jest większa od 0 zmniejsz ją o 10.

• Jeśli jest mniejsza od 0, zwiększ ją o 10.

• Jeśli jest równa 0 nie rób nic.

• Operacje zwiększenia i zmniejszenia dokonaj za pomocą pętli.

Ćwiczenia

28

Start

Stop

Read (x)

x<0

Tak

Write (x)

licznik>10Nie

i= -1i=1

Tak

Nie

licznik=1

x=x+i

licznik=licznik+1

29

1) Napisz algorytm wyświetlający tablicę 10-elementową.

Ćwiczenia

30

Start

Stop

Licznik>10Tak

Nie

licznik=licznik+1

a[1]=3 a[2]=9 a[3]=11 a[4]=5 a[5]=4a[6] =10 a[7]=20 a[8]=14 a[9]=1 a[10]=25

licznik=1

Read (x)

31

1) Napisz algorytm wyliczający sumę elementów tablicy.

2) Napisz algorytm wyliczający średnią elementów tablicy.

3) Napisz algorytm wyszukujący najmniejszy element tablicy.

4) Napisz algorytm wyszukujący największy element tablicy.

Ćwiczenia

32

1) Napisz algorytm kopiujący zawartość jednej tablicy do drugiej. Tę drugą należy potem wyświetlić.

2) Napisz algorytm kopiujący z jednej tablicy do drugiej tylko elementy większe od średniej.

3) Napisz algorytm kopiujący z jednej tablicy do drugiej tylko elementy parzyste.

Ćwiczenia

33

Co robią następujące algorytmy?