Myślenie algorytmiczne – 2 liceum/technikum

Myślenie algorytmiczne jest częścią szerszego myślenia informatycznego i polega na projektowaniu i analizowaniu algorytmów.

Co obejmuje myślenie algorytmiczne?

Algorytm to dokładnie określony sposób postępowania prowadzący do rozwiązania danego problemu. Myślenie algorytmiczne najczęściej wykorzystuje się podczas programowania, czyli zapisywania algorytmów wykonywanych przez komputer. Ma ono jednak zastosowanie także w życiu codziennym – przykładami prostych algorytmów są przepisy kulinarne czy instrukcje pozwalające dotrzeć z jednego miejsca do drugiego.

Myślenie algorytmiczne obejmuje nie tylko tworzenie algorytmu, ale także inne powiązane działania:

  • Zrozumienie i precyzyjne sformułowanie problemu.
  • Abstrakcję, rozkład problemu na mniejsze części, odróżnianie elementów istotnych od mniej ważnych.
  • Rozważanie różnych sposobów rozwiązania problemu, porównywanie efektywności algorytmów, optymalizację procedur.
  • Zrozumienie algorytmu stworzonego przez kogoś innego oraz jego wykonanie.
  • Wyszukiwanie i poprawianie błędów.

Myślenie algoryticzne na

Zagadnienie podzieliliśmy na kilka podtematów:

Przykłady w tej części opierają się głównie na „mikrośrodowiskach”, czyli prostych, intuicyjnych przestrzeniach z ograniczoną liczbą poleceń, ale ciekawą dynamiką.

Decydowanie

Szybkie ćwiczenie polegające na wybraniu prawidłowej odpowiedzi spośród dwóch propozycji.


Myślenie algorytmiczne
Rozpoznawanie wzorców
Odkrywanie ukrytych reguł
Zależności pomiędzy słowami
Sekwencje poleceń
Wejście i wyjście  
Pokaż wyjaśnienie do tematu
Zmienne
Zmienne: ogólne zasady
Typy zmiennych  
Pokaż wyjaśnienie do tematu
Nazwy zmiennych
Tworzenie programów
Schematy blokowe
Schematy blokowe: podstawy


Przesuwanie

Przesuwanie karteczek w odpowiednie miejsce. Proste sterowanie, atrakcyjne i oryginalne zadania.


Myślenie algorytmiczne
Rozpoznawanie wzorców
Wspólna cecha  
Pokaż wyjaśnienie do tematu
Trójki
Wzorce w ciągach  
Pokaż wyjaśnienie do tematu
Uzupełnianie ciągu: liczby
Uzupełnianie ciągu: kształty geometryczne
Opis wzorców  
Pokaż wyjaśnienie do tematu
Opis wzorów: wyszywanie
Odkrywanie ukrytych reguł
Kody kwiatów
Rozkład obrazków na elementy  
Pokaż wyjaśnienie do tematu
Rozkład obrazków
Rozkład obrazków (z powtórzeniami)
Sekwencje poleceń
Kolejność poleceń  
Pokaż wyjaśnienie do tematu
Budowle z klocków
Funkcje i uogólnianie
Abstrakcje  
Pokaż wyjaśnienie do tematu
Domino: abstrakcje
Drabina abstrakcji
Funkcje z parametrami
Funkcje z obrazkami


Zaznaczanie

Twoim zadaniem jest zaznaczenie na rysunku lub w tekście wszystkich poprawnych odpowiedzi.


Myślenie algorytmiczne
Rozpoznawanie wzorców
Wzorce w ciągach  
Pokaż wyjaśnienie do tematu
Intruzi w ciągu: liczby
Intruzi w diagramie: liczby
Intruzi w diagramie: obrazki
Odkrywanie ukrytych reguł
Kolorowanie: tajna reguła
Rozkład obrazków na elementy  
Pokaż wyjaśnienie do tematu
Wzory z kafelków


Memory

Szukanie pasujących par.


Myślenie algorytmiczne
Rozpoznawanie wzorców
Takie same wzorce  
Pokaż wyjaśnienie do tematu
Guziki i nitki
Wspólna cecha  
Pokaż wyjaśnienie do tematu
Wspólna cecha: znaki i liczby
Rozkład obrazków na elementy  
Pokaż wyjaśnienie do tematu
Rozkład obrazków (z powtórzeniami)
Pętle i warunki
Powtórz Nx
Obrazki żółwia (z powtórzeniami)
Zmienne
Zmienne: ogólne zasady
Typy zmiennych  
Pokaż wyjaśnienie do tematu
Funkcje i uogólnianie
Abstrakcje  
Pokaż wyjaśnienie do tematu
Abstrakcje potworków


Wpisywanie odpowiedzi

Ćwiczenie, w którym wpisujesz odpowiedź na klawiaturze.


Myślenie algorytmiczne
Rozpoznawanie wzorców
Wzorce w ciągach  
Pokaż wyjaśnienie do tematu


Grafika żółwia

Rysowanie obrazków grafiką żółwia przy użyciu programowania blokowego.


Podstawy

Na początek nauczymy żółwia podstawowych poleceń ruchu i skręcania i narysujemy razem z nim kilka prostych rysunków.

Rysunki z powtórzeniami

Dodamy żółwiowi możliwość powtarzania poleceń, dzięki czemu będzie mógł narysować więcej rzeczy.

Rysowanie

Aby rysunki nie były tak prymitywne, nauczymy żółwia, jak używać koloru i podnosić pędzel.

Rysowanie II

A teraz spróbujemy narysować kilka obrazków z (żółwiego) życia. Rysowanie tych obrazków nie należy do najłatwiejszych, ale równocześnie nie wymaga żadnych skomplikowanych ruchów.

Wzory z powtórzeniami

Jeżeli odpowiednio użyjemy zagnieżdżonych powtórzeń, żółw będzie rysował przepiękne wzory.

Żółw z limitem

W tym zestawie Twoim zadaniem jest napisanie krókich programów dla żółwia –⁠ każde zadanie ma limitowaną liczbę poleceń. Czy uda Ci się znaleźć poprawny, krótki zapis programu?

Wzory z powtórzeniami II

Kilka kolejnych wzorów z regularnymi powtórzeniami. Niektóre na pierwszy rzut mogą wydawać się skomplikowane, ale ich narysowanie nie jest trudne. Trzeba tylko uważnie się przyjrzeć.

Zmienne

Nauczymy żółwia używania zmiennych, dzięki którym będzie mógł narysować spirale.

Zmienne II

Trudniejsze przykłady ze zmiennymi.

Debugowanie rysunków

W tym zestawie mamy przygotowane programy, w których jednak wkradł się błąd. Spróbuj go znaleźć i naprawić.

Modyfikowanie programów

W tym zestawie mamy do dyspozycji rozwiązania, którym trochę brakuje do ideału. Twoim zadaniem jest zmodyfikować program w taki sposób, aby był krótszy i zmieścił się w limicie poleceń.

Poprawne kąty

Żółw potrafi narysować piękne gwiazdy i inne ciekawe wzory. Trzeba mu jednak powiedzieć, pod jakim kątem musi skręcić. Spróbuj nie zgadywać miary kąta, tylko ją obliczyć.

Żółw z limitem II

Drugi, trudniejszy zestaw z limitem na liczbę poleceń.

Podchwytliwe

Kilka trudniejszych zadań. Często można rozwiązać je za pomocą krótkiego programu, ale trzeba wpaść na odpowiedni pomysł.

Żółwie eksperymentarium

Na koniec kilka zadań, z którymi można się „pobawić”. Nie mamy tu niczego konkretnego do zrobienia. Możemy dowolnie eksperymentować z gotowym programem.



ProgMalowanie

Tworzenie obrazków poprzez łączenie podstawowych kształtów (np. koło, kwadrat), wykorzystanie programowania blokowego.


Składanie kształtów

Składając ze sobą podstawowe kształty, możemy stworzyć ciekawe rysunki geometryczne, zwłaszcza gdy użyjemy do tego specjalnego pędzla odwrotnego.

Składanie kształtów II

Dobrze przyjrzyj się kształtom i spróbuj złożyć je z kształtów podstawowych.

Malowanie: rozgrzewka

Zestaw przykładów na rozgrzewkę, dzięki którym wypróbujesz sterowanie.

Rysunki

Tworzenie rysunków za pomocą podstawowych operacji. Trzeba trochę zastanowić się nad prawidłową kolejnością...

Rysunki II

Bardziej szczegółowe rysunki. Nie wymagają wielkiego namysłu, tylko trochę staranności.

Wzory z powtórzeniami I

Tu mamy dodatkowe polecenie powtórzenia, którego użyjemy do narysowania rzędów i wzorów.

Wzory z powtórzeniami II

Bardziej zaawansowany zestaw wykorzystujący powtórzenia.

Zmienne I

A teraz dodamy zmienne, które w połączeniu z powtórzeniami pozwolą nam tworzyć nowe, jeszcze ciekawsze wzory.

Zmienne II

Funkcje

Za pomocą funkcji możemy tworzyć nowe wzory i umieszczać je w różnych miejscach na płótnie.

Debugowanie rysunków

Ważną częścią programowania jest debugowanie, czyli wyszukiwanie błędów i ich naprawianie. W tym zestawie możesz przećwiczyć tę umiejętność: masz gotowy program, który wymaga dopracowania.

Podchwytliwe

Zbiór trudniejszych zadań na koniec.



Platformówka

Steruj skaczącą postacią za pomocą programowania blokowego.


Czarowanie

Pan Blob potrafi czarować! Na przykład umie odczarować wszystkie platformy z trawą.

Duch

Pan Blob potrafi przemienić się w ducha. Jako duch może przejść przez niebezpieczne kolce i pająki, ale nie może zbierać monet.

Interakcje

Stwórz własne zasady gry, a następnie zagraj w grę! W tym zestawie pan Blob potrafi reagować nie tylko na elementy na planszy, ale także na kliknięcia.

Interakcje i strzelanie

Stwórz własną strzelankę! Użyj klikania, aby pomóc panu Blobowi pokonać pająki.

Interakcje i czarowanie

Pan Blob będzie czarował, a ty możesz mu pomóc, klikając we właściwym momencie.

Warunki: podstawy

Pan Blob jest inteligentny i nie musi robić tego samego przy wszystkich kaktusach. Może podejmować decyzje w zależności od tego, czy kaktus rośnie na trawie czy na piasku.

Pająki i strzały

Uwaga: niektóre platformy są strzeżone przez gigantyczne pająki. Na szczęście pan Blob potrafi je zestrzelić.

Warunki rozszerzone

Aby móc podejmować lepsze decyzje, pan Blob musi nauczyć się nowych warunków dotyczących kierunku chodzenia i liczby monet.

Interakcje i warunki

Teraz Pan Blob zajmie się eksplorowaniem trudniejszych światów platformowych, wykorzystując warunki i kliknięcia.

Duch i warunki

Pan Blob znów musi przemienić się w ducha, ale tym razem tylko w odpowiednich warunkach.

Czarowanie z warunkami

Teraz pan Blob będzie potrzebował zarówno czarów, jak i warunków.

Kombinacje warunków

W tym zestawie zastosujemy kombinację warunków (operatory logiczne, warunki zagnieżdżone).

Liczniki

Liczniki II

Podchwytliwe

Zbiór trudniejszych zadań. Niektóre można rozwiązać za pomocą prostego programu, choć znalezienie właściwego rozwiązania może przysporzyć trochę problemów.



Budowniczy

Stwórz program dla budowniczego Romana za pomocą programowania blokowego.


Podstawy budownictwa

Poznaj budowniczego Romana. Roman trenuje podstawowe czynności (chodzenie, przenoszenie materiału, budowanie, wycinanie).

Budowle z planowaniem

Budowle z powtórzeniami

Roman szybko się uczy i potrafi już zbudować różne obiekty. Do przydzielania zadań przyda się polecenie powtórz.

Budowle z powtórzeniami: trudniejsze

Powtarzaj dopóki

Tym razem wypróbujemy odmianę polecenia powtórz z wykorzystaniem warunków.

Powtarzaj dopóki: trudniejsze

Powtarzanie i warunki

Powtarzanie i warunki: trudniejsze

Pętle zagnieżdżone

Funkcje bez parametrów

Rekurencja

Debugowanie programów

Podchwytliwe



Robotanik

Proste sterowanie graficzne, zawiłe zadania programistyczne.


Trening

Zapoznaj się z podstawowym sterowaniem Robotanika.

Łatwe

Zestaw prostych zadań, z którymi poradzi sobie każdy początkujący programista (przy odrobinie pomyślunku).

Średnie

Przy tych zadaniach trzeba już będzie trochę bardziej pogłówkować, ale nie ma w nich jeszcze żadnych haczyków.

Trudne

Tutaj zaczyna się robić nieco trudniej. W wielu zadaniach trzeba już sprawnie posługiwać się rekurencją (zagnieżdżonymi wywołaniami funkcji i powrotami z nich).

Prawdziwe wyzwanie

Te zadania potrafią dać w kość nawet doświadczonemu programiście.



Żółw Python

Tworzenie programów w Pythonie, rysowanie obrazków grafiką żółwia.


Rekurencja i fraktale



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