← Lekcje
Python · lekcja 17

Algorytm i lista kroków

  1. Co czeka nas w nowym rozdziale?
  2. Czym jest algorytm i czym jest lista kroków?
  3. Trzy cechy poprawnego algorytmu
  4. Cztery sposoby zapisu tego samego algorytmu

Podręcznik „Informatyka na czasie 2”: s. 89–92 oraz dodatek 4, s. 218–219. Dziś bez komputera i bez pisania programów.

Rozgrzewka · 3 minuty

Co pamiętacie z lekcji 16?

  1. Jaki błąd zgłasza Python, gdy wykona int("abc")?
  2. Czym obsługujemy błąd, żeby program nie przerwał działania?
  3. Jak zmusić program, żeby pytał tak długo, aż użytkownik poda liczbę?
Część 1 · Zapisy w Pythonie

Powtórka: jak wygląda kod w Pythonie

Python to język, w którym piszemy od lekcji 1. Tabela zbiera pięć zapisów, które już znacie.

ZapisCo robi
count = 7instrukcja przypisania: zapamiętuje liczbę 7 pod nazwą count, czyli w zmiennej
total = count + 3operacja arytmetyczna: zwiększa wartość zmiennej count o 3 i zapisuje wynik w zmiennej total
name = input()przypisuje zmiennej name tekst wpisany na klawiaturze
print("Anna i", name)wypisuje na ekranie tekst i wartość zmiennej, np. Anna i Piotr
if count > 0:instrukcja warunkowa: wybiera dalszą drogę programu zależnie od tego, czy warunek jest spełniony
Podręcznik Informatyka na czasie 2, s. 90 („Przypomnij sobie”, pięć bloków)
Część 1 · Pojęcie

Algorytm to precyzyjna instrukcja

Algorytm to precyzyjny opis kolejnych działań, które prowadzą do wykonania zadania, czyli do rozwiązania problemu.

Znacie już słowa instrukcja, przepis i procedura. Algorytm jest ich technicznym odpowiednikiem: przepis na ciasto też mówi, co zrobić najpierw, co potem i ile razy powtórzyć. Pierwotnie matematycy nazywali tak pisemny sposób wykonywania rachunków na liczbach, na przykład 634 + 87 + 347. Słowo procedura zostało zapożyczone z języka prawniczego, gdzie oznacza kolejne kroki prowadzenia sprawy.

Ciekawostka. Słowo „algorytm” pochodzi od nazwiska perskiego matematyka z IX wieku, Muhammada ibn Musy al-Chuwarizmiego. Zlatynizowana forma jego nazwiska, „Algoritmi”, dała łacińskie słowo „algorithmus”, czyli liczenie na cyfrach arabskich.

Podręcznik Informatyka na czasie 2, s. 91 (6.1 Algorytm – precyzyjna instrukcja, definicja i ramka „Warto wiedzieć”) · ciekawostka: pl.wikipedia.org/wiki/Algorytm
Część 1 · Lista kroków

Lista kroków: rozgrzewka na lekcji WF

Lista kroków to precyzyjny opis postępowania złożony z zapisanych słownie pojedynczych instrukcji, nazywanych krokami. Kroki mogą odwoływać się do siebie nawzajem, część z nich może się powtarzać, a lista może się rozgałęziać zależnie od warunku.

Wypady w przód: lista kroków 1 Stań prosto na płaskiej powierzchni. 2 Powtórz 8 razy kroki od 3 do 6 dla obu nóg. Kroki od 3 do 6 są powtarzane w ramach kroku 2 3 Pochyl się mocno do przodu, opierając ciężar ciała na jednej nodze. 4 Drugą nogę pozostaw prostą. 5 Odczekaj 2 sekundy. 6 Wróć do pozycji wyjściowej.
Podręcznik Informatyka na czasie 2, s. 91–92 (6.1 Algorytm – precyzyjna instrukcja, rys. 6.1 „Demonstracja ćwiczenia na rozgrzewkę” wraz z listą kroków)
Część 1 · Cechy algorytmu

Trzy cechy poprawnego algorytmu

skończony można go wykonać w skończonej liczbie kroków precyzyjny jednoznacznie mówi, jakie czynności wykonać, by osiągnąć cel uniwersalny jest użyteczny w różnych okolicznościach Lista kroków wypadów ma wszystkie trzy: podaje liczbę powtórzeń, nie zostawia miejsca na domysły i pasuje każdemu

Algorytm da się zapisać na cztery sposoby: jako opis słowny, listę kroków, schemat blokowy albo kod źródłowy. To wciąż ten sam algorytm, tylko w innej formie zapisu.

Podręcznik Informatyka na czasie 2, s. 92 (6.1 Algorytm – precyzyjna instrukcja, „Cechy poprawnego algorytmu”, ramka „Zapamiętaj”) oraz dodatek 4, s. 218 („Sposoby zapisu algorytmów”)
Część 2 · Schemat blokowy

Schemat blokowy: kształty i strzałki

Kształty owal początek i koniec algorytmu równoległobok wczytanie danej albo wypisanie wyniku prostokąt obliczenie, czyli przetworzenie danych Strzałki pokazują kolejność wykonywania operacji. Przeliczanie temperatury ze skali Fahrenheita na Celsjusza Start Odczytaj temperaturę F. Oblicz C = (F − 32) * 5 / 9 Wypisz wartość C. Stop
Podręcznik Informatyka na czasie 2, dodatek 4, s. 218 („Sposoby zapisu algorytmów”, schemat blokowy przeliczania temperatury ze skali Fahrenheita na skalę Celsjusza)
Część 2 · Warunek

Gdy algorytm musi wybrać drogę

Lista kroków może się rozgałęziać. Na schemacie blokowym miejsce wyboru rysuje się rombem: wpisujecie do niego pytanie, na które da się odpowiedzieć „tak” albo „nie”, i prowadzicie z niego dwie strzałki.

Czy C > 30? TAK NIE Wypisz: upał Wypisz: bez upału Stop
Podręcznik Informatyka na czasie 2, s. 91 (rozgałęzianie listy kroków) i dodatek 4, s. 218 (kształty schematu blokowego) · kształty schematów opisuje norma ISO 5807, en.wikipedia.org/wiki/Flowchart
Część 2 · Pseudokod i kod

Ten sam algorytm, dwa różne zapisy

Oba zapisy opisują to samo: szukanie największej liczby całkowitej, która podniesiona do kwadratu nie przekracza wczytanej liczby n. Po lewej pseudokod, czyli zapis przypominający program, ale bez reguł konkretnego języka. Po prawej ten sam algorytm jako kod źródłowy w Pythonie.

wczytaj n
p ← 1
dopóki (p + 1) · (p + 1) ≤ n
    wykonuj p ← p + 1
wypisz p
n = int(input())
p = 1
while (p + 1)*(p + 1) <= n:
    p = p + 1
print(p)

Strzałka w pseudokodzie oznacza przypisanie wartości do zmiennej, a w Pythonie robi to znak =. Symbole +, · i znaczą to samo, co na matematyce. Nie ma jednej obowiązującej konwencji pseudokodu: liczy się to, żeby oznaczenia były zrozumiałe i stosowane konsekwentnie.

Podręcznik Informatyka na czasie 2, dodatek 4, s. 219 („Pseudokod” i „Kod źródłowy”, algorytm części całkowitej pierwiastka kwadratowego) · w podręczniku pseudokod ma pętlę w jednym wierszu, tutaj złamana na dwa
Ćwiczenie · na kartce · 12 minut

Ćwiczenie: własny algorytm z życia

  1. Podpisz kartkę i dopisz, gdzie słyszałeś słowo „algorytm”.
  2. Wybierz czynność z życia codziennego i zapisz ją jako listę kroków, wzorem listy z WF: pięć kroków, a jeden powtarza inne podaną liczbę razy.
  3. Sprawdź trzy cechy, przy każdej dopisz „tak” albo poprawkę.
  4. Na odwrocie narysuj tę czynność jako schemat blokowy z jednym rombem.
Karta: algorytm z życia
Skojarzenie:
Czynność:
1.
2. Powtórz ... razy kroki od ... do ...
3.  4.  5.
Cechy: skończony? precyzyjny? uniwersalny?

Dla chętnych (w domu): wybierz drugą czynność z życia, zapisz ją jako listę kroków, a potem tę samą listę jako pseudokod.

Podręcznik Informatyka na czasie 2, s. 91–92 (ćwiczenia 1 i 2) oraz dodatek 4, s. 218
Część 2 · Pytania kontrolne

Trzy pytania na koniec

  1. Czym lista kroków różni się od zwykłego opowiedzenia, jak coś zrobić?
  2. Które trzy cechy ma poprawny algorytm i co znaczy, że algorytm jest uniwersalny?
  3. Dlaczego lista kroków, schemat blokowy i kod źródłowy mogą opisywać dokładnie ten sam algorytm?
Podręcznik Informatyka na czasie 2, s. 91–92 (6.1 Algorytm – precyzyjna instrukcja) i dodatek 4, s. 218–219
Część 2 · Podsumowanie

A jak to wygląda w produkcji?

Na lekcjiW produkcjiStatus
Lista kroków na kartceTak samo wyglądają firmowe instrukcje i procedury: numerowane kroki, podana liczba powtórzeń, warunek przy rozgałęzieniu.nadal w użyciu
Owal, równoległobok, prostokąt, rombKształty opisuje norma ISO 5807 z 1985 roku (przegląd w 2019), więc schemat z jednej firmy czyta się w innej.nadal w użyciu
Schemat blokowy zadaniaProcesy w firmach rysuje się w notacji BPMN (Business Process Model and Notation, norma ISO 19510), która dokłada symbole zdarzeń i ról.rozszerzane
Pseudokod przed kodemAlgorytm uzgadnia się w pseudokodzie albo na schemacie, bo o pomyśle łatwiej rozmawiać niż o gotowym programie.nadal w użyciu
Kod źródłowy w zeszycieZawodowo kod pisze się w środowisku programistycznym. W badaniu Stack Overflow Developer Survey 2025 Visual Studio Code wskazało 75,9 % programistów.narzędzia
ISO 5807 i geneza kształtów: en.wikipedia.org/wiki/Flowchart · BPMN i ISO 19510: en.wikipedia.org/wiki/Business_Process_Model_and_Notation · środowiska programistyczne: survey.stackoverflow.co/2025/technology