Moduł Python – algorytmika

Moduł Python skierowany jest do uczniów, którzy dopiero zaczynają swoją przygodę z programowaniem oraz tych którzy pierwsze kroki mają już za sobą. W trakcie modułu przedstawione zostaną podstawowe zagadnienia potrzebne do rozpoczęcia nauki programowania. W trakcie trwania modułu uczestnik pozna język Python oraz środowisko JetBrains PyCharm. Na drugim poziomie wprowadzone zostaną elementy algorytmiki (wyszukiwanie, sortowanie), które niezbędne są do programowania złożonych programów.

PROGRAM MODUŁU PYTHON – ALGORYTMIKA (12+)


Poziom 1.

(7 spotkań po 60 minut)

 

Wprowadzenie do programowania - zapoznanie ze środowiskiem PyCharm.

Lekcja ma na celu przedstawienie uczestnikom ogólnych zasad programowania oraz zapoznanie ich ze środowiskiem PyCharm. Przedstawione zostaną podstawowe elementy składni języka – pobieranie, wyświetlanie danych, zmienne, operacje arytmetyczne i logiczne.

Podstawowe elementy składni - instrukcje warunkowe.

W czasie lekcji uczestnicy zostaną zapoznani z instrukcjami warunkowymi w programowaniu. Zaimplementujemy proste programy demonstrujące zasadę działania instrukcji warunkowych.

Podstawowe elementy składni - instrukcje iteracyjne.

Podczas lekcji uczestnicy poznają różnice pomiędzy instrukcjami iteracyjnymi (pętle). Zaprogramujemy programy realizujące te same zadania poprzez różne pętle.

Liczby pseudolosowe i rzutowanie danych.

Celem lekcji jest przedstawienie uczestnikom mechanizmu generowania liczb pseudolosowych. Poznamy sposoby rzutowania i prezentowania danych w programie.

Debugowanie programu. Szukanie i poprawianie błędów.

Lekcja ma na celu przedstawienie mechanizmu debuggowania – uruchamianie krokowe programu. Uczestnicy będą szukać błędów w programach oraz dokonywać ich korekty.

Funkcje w Pythonie.

W trakcie lekcji poznamy sposoby definiowania podprogramów (funkcji). Omówione zostanę argumenty funkcji oraz różnice pomiędzy zmienną lokalną oraz zmienną globalną.

Pliki tekstowe.

Podczas lekcji przestawione zostaną sposoby odczytu i zapisu danych do plików tekstowych. Poznamy polecenia umożliwiające łącznie i dzielenie ciągów znaków. Wykorzystamy zdobyte umiejętności do napisania aplikacji typu książka adresowa.

Poziom 2.

(7 spotkań po 60 minut)

 

Listy.

Lekcja ma na celu przedstawienie zbiorów danych typu listy (tablice). Poznamy sposoby wypełniania tablicy: na sztywno, danymi pseudolosowymi, danymi pobranymi przez użytkownika.

Sortowanie danych.

Podczas lekcji nauczymy się algorytmów sortowania bąbelkowego oraz sortowania przez wybór. Zaprogramujemy funkcje realizujące wybrane sortowania.

Wyszukiwanie danych.

Celem lekcji jest poznanie sposobów wyszukiwania informacji w tablicy. Poznamy metodę liniową oraz binarną szukania elementów w tablicy danych. Zaprogramujemy funkcje realizujące wybrane wyszukiwania.

Algorytm Euklidesa.

W czasie lekcji uczestnicy zostaną zapoznani z algorytmem Euklidesa do wyznaczania NWD (największego wspólnego dzielnika). Wspólnie napiszemy program, który będzie obliczał NWD na dwa sposoby.

Liczby pierwsze.

W trakcie lekcji przypomnimy definicję liczby pierwszej. Napiszemy program, który będzie wyświetlał kolejne liczby pierwsze z wybranego przedziału. Ponadto napiszemy funkcję sprawdzającą czy liczba podana jako argument jest liczbą pierwszą.

Rekurencja.

Lekcja ma na celu poznanie definicji rekurencji (wywoływanie funkcji w funkcji). Uczestnicy napiszą program wykorzystujący funkcję rekurencyjną.

Ciąg Fibonacciego.

Podczas lekcji zdefiniujemy w jaki sposób powstają kolejne elementy ciągu Fibonacciego. Każdy uczestnik napiszę rekurencyjny oraz iteracyjny sposób obliczania n-tego wyrazu ciągu Fibonacciego.


Po ukończeniu poziomu 1. uczestnik posiada następujące umiejętności:

  • Potrafi tworzyć proste programy w języku Python.

  • Zna najważniejsze elementy składni (instrukcje warunkowe, pętle) języka Python i potrafi je wykorzystywać do rozwiązywania problemów algorytmicznych.

  • Dostosowuje kompilator PyCharm do własnych potrzeb.

  • IImplementuje własne funkcje w celu optymalizacji kodu programu.

  • Generuje liczby pseudolosowe oraz dokonuje konwersji zmiennych (rzutowanie).

  • Wykorzystuje debbuger w celu zlokalizowania i usunięcia błędów aplikacji.

  • Wie w jaki sposób odczytać oraz zapisać plik tekstowy z dysku komputera.

Po ukończeniu poziomu 2. uczestnik posiada następujące umiejętności:

  • Wie czym są listy oraz jak je wykorzystać w programach.

  • Zna podstawowe sposoby sortowania danych (bąbelkowe, przez wybór).

  • Zna podstawowe sposoby wyszukiwania danych (liniowe, binarne).

  • Potrafi napisać algorytm Euklidesa – NWD na dwa sposoby.

  • Zna definicję liczby pierwszej oraz implementuje kod programu sprawdzający czy dana liczba jest liczbą pierwszą.

  • Zna pojęcie rekurencji, potrafi zaprojektować funkcję, która będzie działać w sposób
    rekurencyjny.

  • Potrafi zaprogramować obliczanie kolejnych elementów ciągu Fibonacciego na dwa sposoby (iteracyjnie, rekurencyjnie)

Opłaty:

30 zł za 60 minut zajęć.

Poziom 1. składa się z 7 spotkań, raz w tygodniu po 60 minut. Po ukończeniu poziomu 1. zapraszamy na kontynuację nauki na poziomie 2. Opłata za jeden moduł wynosi 210 złotych. Zapisy na kolejny moduł mają pierwszeństwo osoby biorące udział w poprzednim module.

Terminy zajęć modułu Python:

  • Poniedziałek-Piątek w godzinach 15:00-20:00.
  • Soboty w godzinach 10:00-14:00.

Dokładne terminy poszczególnych zajęć dostępne są po zebraniu grupy.

Lokalizacja: Wybrane szkoły podstawowe na terenie Piastowa i Pruszkowa.

Liczba uczestników modułu Python: 4-6 osób