Algorytmy – różne przykłady Marek Pudełko
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. Jeśli jedzie auto to poczekaj. Wróć do punktu 3. Jeśli nic nie jedzie z prawej strony przejdź do punktu 4. Przejdź przez jezdnię.
Algorytm przechodzenia przez jezdnię Stań na krawędzi chodnika Popatrz w lewą stronę. Czy jedzie auto? TAK NIE Popatrz w prawą stronę. Czy jedzie auto? TAK NIE Przejdź przez jezdnię.
Algorytm przechodzenia przez jezdnię Start Stań na krawędzi chodnika Popatrz w lewą stronę Tak Czy jedzie auto? Nie Popatrz w prawą stronę Tak Czy jedzie auto? Nie Przejdź przez jezdnię Stop
Ćwiczenia Napisz algorytm przechodzenia przez jezdnię na światłach.
Algorytm obsługi lampy Czy lampa jest włączona? Jeśli nie włącz ją. Przejdź do następnego punktu. Czy żarówka jest sprawna? Jeśli nie zmień ją. Przejdź do następnego punktu. Korzystaj z lampy Koniec algorytmu
Algorytm obsługi lampy Start Nie Czy lampa jest włączona? Włącz lampę Tak Czy żarówka jest sprawna? Nie Zmień żarówkę Tak Korzystaj z lampy Stop
Algorytm dodawania Start algorytmu Przygotuj dane: a,b,c- liczby całkowite Wczytaj a Wczytaj b Dodaj a i b, a wynik wpisz do c Wypisz c Koniec algorytmu
Algorytm dodawania Start a,b,c: liczby całkowite Read (a) Read (b) c → a + b Write (c) Stop
Ćwiczenia Napisz algorytm: Napisz algorytm liczący: Odejmowania Mnożenia Napisz algorytm liczący: Pole koła Pole trójkąta Pole prostokąta Pole kwadratu
Ćwiczenia Napisz algorytm liczący średnią z 3 wczytanych liczb s Odejmowania Mnożenia Napisz algorytm liczący: Pole koła Pole trójkąta Pole prostokąta Pole kwadratu
Algorytm dzielenia Start algorytmu Przygotuj dane: Wczytaj a Wczytaj b a,b- liczby całkowite c- liczby rzeczywiste Wczytaj a Wczytaj b Jeśli b jest równe 0, wróć do punktu 4 Jeśli b jest różne od 0, idź do punktu 5. Podziel a przez b, a wynik wpisz do c Wypisz c Koniec algorytmu
Algorytm dzielenia Start a,b: liczby całkowite c: liczba rzeczywista Read (a) Read (b) Tak b = 0 Nie c → a / b Write (c) Stop
Ćwiczenia Napis algorytm pierwiastkowania
Algorytm wyliczania modułu z liczby Start algorytmu Przygotuj dane: x- liczba rzeczywista Czy (x >0)? Jeśli TAK napisz x i przejdź do punktu 4 Jeśli NIE napisz -x i przejdź do punktu 4. Koniec algorytmu
Wyliczanie modułu z liczby Start Czytaj x x >= 0 Nie Tak Pisz -x Pisz x Koniec
Ćwiczenia Napisz algorytm liczący równanie: c=|x|+5*x c=|x2|+|x| c=|2x|+x Napisz algorytm sprawdzania parzystości liczb (funkcja mod i % nie działa w magicznych bloczkach)
Algorytm porównywania liczb Start algorytmu Przygotuj dane: a,b- liczby całkowite Wczytaj a Wczytaj b Czy (a = b)? Jeśli TAK napisz „równe” i przejdź do punktu Jeśli NIE przejdź do punktu 6, idź do punktu 5. Czy (a > b)? Jeśli TAK napisz „a większe od b” i przejdź do punktu 7 Jeśli NIE napisz „b większe od a” i przejdź do punktu 7. Koniec algorytmu
Algorytm porównywania liczb Start a,b: liczby całkowite Read (a) Read (b) Tak a = b Nie Tak a > b Write (‘równe’) Write (‘a jest większe’); Nie Write (‘b jest większe’); Stop
Ćwiczenia Napisz algorytm sprawdzający czy liczba jest dodatnia, ujemna czy równa zero. Napisz algorytm wczytujący trzy liczby i sprawdzający, która jest z nich największa. Napisz algorytm wyliczający pierwiastki równania kwadratowego. Algorytm ma wczytać a,b,c; wliczyć deltę i podać x lub x1,x2.
Algorytm pętli Start algorytmu Przygotuj dane: i=1 Czy (i > 10)? i - liczby całkowite i=1 Czy (i > 10)? Jeśli TAK przejdź do punktu 8 Jeśli NIE idź do punktu 5. Napisz i i=i+1 Idź do punktu 4 Koniec algorytmu
Algorytm pętli Start i: liczby całkowite i=1 Tak i > 10 Nie Tak Stop Write(i) Nie i= i+1
Ćwiczenia Napisz algorytm wypisujący w pętli liczby od 1 do n. n wczytujemy z zewnętrz. Napisz algorytm wypisujący w pętli liczby od n do 1. Napisz algorytm sumujący liczby od 1 do n. n wczytujemy z zewnętrz. Napisz algorytm wyliczający silnię n.
licznik=1 a=1 a=a*licznik licznik=licznik+1 Start Read (n) Tak licznik>n Nie a=a*licznik Write (a) licznik=licznik+1 Stop
licznik=1 a=0 a=a+licznik licznik=licznik+1 Start Read (n) Tak licznik>n Nie a=a+licznik Write (a) licznik=licznik+1 Stop
Ćwiczenia 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.
i=1 i= -1 licznik=1 x=x+i licznik=licznik+1 Start Read (x) Tak x<0 Nie i=1 i= -1 licznik=1 Tak licznik>10 Nie x=x+i Write (x) licznik=licznik+1 Stop
Ćwiczenia Napisz algorytm wyświetlający tablicę 10- elementową.
licznik=1 licznik=licznik+1 Start a[1]=3 a[2]=9 a[3]=11 a[4]=5 a[5]=4 Tak Licznik>10 Nie Stop Read (x) licznik=licznik+1
Ćwiczenia Napisz algorytm wyliczający sumę elementów tablicy. Napisz algorytm wyliczający średnią elementów tablicy. Napisz algorytm wyszukujący najmniejszy element tablicy. Napisz algorytm wyszukujący największy element tablicy.
Ćwiczenia Napisz algorytm kopiujący zawartość jednej tablicy do drugiej. Tę drugą należy potem wyświetlić. Napisz algorytm kopiujący z jednej tablicy do drugiej tylko elementy większe od średniej. Napisz algorytm kopiujący z jednej tablicy do drugiej tylko elementy parzyste.
Co robią następujące algorytmy?