Algorytmy składają się z sekwencji poleceń, które określają, co komputer ma wykonać (wypisz znak A, narysuj jabłko, idź do przodu). Dlatego podczas programowania musimy wiedzieć, jakie polecenia mamy do dyspozycji i jakie jest ich dokładne znaczenie. Następnie poszczególne polecenia łączymy w sekwencje, tworząc w ten sposób bardziej złożone programy. Ważna jest kolejność poleceń, ponieważ inna kolejność może prowadzić do znacznie odmiennego działania (jeśli obrócimy się w prawo i zrobimy krok naprzód, trafimy w inne miejsce, niż gdy najpierw zrobimy krok naprzód, a dopiero potem się obrócimy).

  • Podstawowe polecenia – proste przykłady pomagające zrozumieć znaczenie podstawowych czynności, z których będziemy później tworzyć bardziej złożone programy
  • Kolejność poleceń – rozróżnianie różnych kolejności poleceń, przyporządkowywanie wyników do sekwencji poleceń
  • Równoległość – przykłady, w których polecenia wykonywane są jednocześnie
  • Zmiana stanu – sytuacje, w których podczas wykonywania programu zmienia się stan środowiska, co wpływa na dalsze działanie programu
  • Wejście i wyjście – programy, które pobierają dane wejściowe z otoczenia, a swoje dane wyjściowe wyświetlają lub zapisują w określony sposób.
Wskazówki dla nauczycieli

Myślenie algorytmicznie najlepiej ćwiczy się w praktyce poprzez tworzenie programów. Doświadczeni programiści piszą programy w tekstowych językach programowania, takich jak np. Python. W przypadku początkujących lepiej jednak zacząć od programowania graficznego z wykorzystaniem bloków – nie trzeba wówczas zajmować się szczegółami zapisu, a można skupić się na samych algorytmach.

  • Jako rozgrzewka i ćwiczenie dla początkujących świetnie sprawdza się ćwiczenie Strzałki.
  • Typowym sposobem ćwiczenia podstaw myślenia algorytmicznego jest interaktywne rozwiązywanie zadań za pomocą programowania blokowego. Tego typu ćwiczenia oferują: Żółwia grafika, ProgMalowanie oraz Budowniczy.
  • Inne ćwiczenia (takie jak Decydowanie, Memory, Przesuwanie) umożliwiają bardziej ukierunkowane trenowanie poszczególnych umiejętności. Nie muszą być one tak atrakcyjne jak tworzenie własnych programów, ale są bardzo przydatne do dokładnego zrozumienia zasad działania algorytmów.
Do góry

Programy składają się z pojedynczych poleceń. W naszych ćwiczeniach możesz na przykład spotkać:

  • polecenia wyświetlania tekstu lub rysowania prostego obrazka: wypisz, narysuj,
  • polecenia ruchu (do przodu, skręć w prawo),
  • wykonania czarów (wyczaruj kapelusz, zamień w żabę).

W praktycznym programowaniu używamy na przykład poleceń wyświetlania tekstu na monitorze, rysowania obrazka, wczytywania informacji z pliku lub zapisywania wyniku obliczeń w pamięci komputera.

Następnie z pojedynczych poleceń tworzymy programy, korzystając z sekwencji poleceń, powtórzeń, warunków i innych metod.

Do góry

Podstawowym elementem każdego algorytmu jest wykonywanie serii działań w określonej kolejności. To, w jakiej kolejności wykonujemy działania, ma ogromne znaczenie. Czasem jest to oczywiste. Kiedy przygotowujemy naleśniki, najpierw musimy wymieszać ciasto, a dopiero potem wylać je na patelnię. Gdybyśmy odwrócili kolejność, efekt raczej nie przypominałby naleśników. Podobnie wygląda to w przypadku programowania robotów. Jeśli robot najpierw się obróci, a potem zrobi krok, rezultat będzie zupełnie inny, niż gdyby najpierw zrobił krok, a dopiero potem się obrócił.

Znaczenie kolejności działań widać bardzo dobrze w ćwiczeniu ProgMalowanie, w którym ostateczny wygląd obrazka zależy od tego, który element narysujemy wcześniej, a który później.

Kolejność poleceń w programach zapisujemy tak samo jak zwykły tekst: od góry do dołu (lub od lewej do prawej).

Do góry

W zaawansowanej informatyce rozróżniamy równoległość i współbieżność, ale tutaj nie będziemy zagłębiać się w te szczegóły. Chodzi o sytuacje, w których wiele procesów dzieje się jednocześnie. Takie zjawisko obserwujemy w naszym codziennym świecie cały czas. Jednak gdy próbujemy opracowywać algorytmiczne rozwiązania problemów, równoległość może stanowić nie lada wyzwanie. Nie jest łatwo zaplanować, żeby wiele zdarzeń przebiegało poprawnie w tym samym czasie.

Do ćwiczenia myślenia o równoległości będziemy korzystać głównie z zadań na kratkowanej siatce, gdzie w tym samym czasie porusza się kilku agentów.

Do góry

Instrukcje wejścia i wyjścia umożliwiają programom interakcję ze światem zewnętrznym. Podstawowy przebieg obliczeń obejmuje sekwencję wejście → przetwarzanie → wyjście, ale program może zawierać kilka instrukcji wejścia i wyjścia. W grze po każdym naciśnięciu strzałki (wejście) wyświetlana jest nowa pozycja sterowanej postaci (wyjście).

Instrukcje wejścia

Instrukcje wejścia pobierają dane do przetwarzania. Dane wejściowe mogą pochodzić od użytkownika i być wprowadzane za pomocą różnych urządzeń wejścia (np. mysz, klawiatura, ekran dotykowy), z pliku zapisanego w komputerze (np. zapisany stan gry) albo z czujników odbierających informacje z otoczenia (np. odległość robota od przeszkody, rozpoznany kolor pola, wykrycie krawędzi w Platformówce.

Instrukcje wczytujące dane wejściowe zazwyczaj czekają na ich otrzymanie (np. dopóki użytkownik nie poda odpowiedzi), a dopiero potem program wykonuje kolejną instrukcję. Alternatywą jest zdefiniowanie kodu, który uruchamia się przy wystąpieniu określonego zdarzenia (np. kliknięcie myszą). Takie rozwiązanie jest często wykorzystywane w grach (również w Platformówce) oraz innych aplikacjach graficznych.

Instrukcje wyjścia

Instrukcje wyjścia przekazują wyniki przetwarzania. Dane wyjściowe mogą być przekazane użytkownikowi za pomocą różnych urządzeń wyjścia (monitor, głośnik) albo zapisane do pliku w celach późniejszego wykorzystania (np. zapisanie aktualnego stanu gry). Wyjście może mieć różną postać, na przykład tekstu (wyświetlenie komunikatu), grafiki (wyświetlenie sceny gry), dźwięku (sygnał ostrzegawczy) lub działania urządzenia wykonującego program (np. ruch robota).

Programy z wejściem i wyjściem

Program może zawierać różne kombinacje instrukcji wejścia, wyjścia, a także instrukcji przetwarzających, które nie należą do żadnej z tych dwóch kategorii.

Niektóre programy nie wymagają żadnych danych wejściowych – za każdym razem wykonują te same działania. (Na przykład programy w żółwiej grafice zawsze rysują ten sam obrazek.) Natomiast każdy użyteczny program generuje jakieś dane wyjściowe.

Do góry
NAPISZ DO NAS

Twoja wiadomość została wysłana. Dziękujemy.

Napisz do nas

Jesteś w kropce?

Zanim zadasz pytanie, zapoznaj się z instrukcjami:

Prosimy o nieprzesyłanie próśb o gotowe rozwiązania. Jeśli zgłaszasz błąd, dokładnie opisz, czego dotyczy, i dołącz zrzut ekranu.

Wybierz temat

Wiadomość Zgłoszenie błędu Treści Sterowanie Logowanie Licencja