Technikum Klasa II 45 minut PP: I-V | s. 342-347

Lekcja 28: Powtorzenie calosciowe - algorytmy, programowanie, aplikacje

Podsumowanie materialu z calego roku szkolnego klasy II

📋 Podstawa programowa: I-V
algorytmymaturapodsumowaniepowtorzenieprogramowanie
00:00
Wprowadzenie
5 min
00:05
Powtorzenie teorii
20 min
00:25
Cwiczenia powtorzeniowe
15 min
00:40
Podsumowanie
5 min
📚

Teoria

Podsumowanie materialau z klasy II technikum

Ponizej znajdziesz zestawienie najwazniejszych tematow omowionych w tym roku szkolnym. Uzyj tego jako checklisty - upewnij sie, ze rozumiesz kazdy temat.

I. Algorytmika i myslenie komputacyjne (L1-L5)

  • Zaawansowane algorytmy sortowania - sortowanie przez scalanie (merge sort), sortowanie szybkie (quicksort), zlozonosc O(n log n)
  • Algorytmy rekurencyjne - pojecie rekurencji, przypadek bazowy, silnia, ciag Fibonacciego, wieże Hanoi
  • Algorytmy na grafach - reprezentacja grafu, BFS, DFS, najkrotsza sciezka
  • Zlozonosc obliczeniowa - notacja O (Big-O), zlozonosc czasowa i pamieciowa

II. Programowanie w Pythonie (L6-L10)

  • Struktury danych - listy, slowniki, zbiory, krotki, ich zastosowania
  • Programowanie obiektowe (OOP) - klasy, obiekty, atrybuty, metody, dziedziczenie
  • Praca z plikami - odczyt/zapis plikow tekstowych, CSV, JSON
  • Biblioteki Pythona - matplotlib (wykresy), random, os, json, csv
  • Obsluga wyjatkow - try/except/finally, wlasne wyjatki

III. Bazy danych i aplikacje (L11-L15)

  • Bazy danych - pojecie bazy danych, SQL, tworzenie tabel, zapytania SELECT, INSERT, UPDATE, DELETE
  • Relacje w bazach danych - klucz glowny, klucz obcy, relacje 1:N, N:M
  • Aplikacje webowe - podstawy HTML/CSS, formularze, responsywnosc
  • Bezpieczenstwo danych - szyfrowanie, haszowanie, RODO, backup

IV. Spoleczenstwo informacyjne (L16-L18)

  • Dostepnosc cyfrowa - technologie asystujace, WCAG, czytniki ekranu
  • Wizerunek w mediach - slad cyfrowy, personal branding, prywatnosc
  • E-nauczanie - platformy MOOC, strategie nauki online, blended learning

V. Projekty (L19-L26)

  • Cykl zycia projektu - planowanie, implementacja, testowanie, prezentacja
  • Specyfikacja projektu - cel, dane we/wy, funkcje, algorytm
  • Testowanie - przypadki testowe, debugowanie, obsluga bledow
  • Praca zespolowa - role, Kanban, stand-up, komunikacja

Kluczowe pojecia do zapamietania

Szybka powtorka pojec:
  • Rekurencja - funkcja wywolujaca sama siebie
  • Zlozonosc O(n) - czas wykonania rosnie liniowo z rozmiarem danych
  • OOP - paradygmat programowania oparty na obiektach i klasach
  • SQL - jezyk zapytan do baz danych
  • WCAG - standard dostepnosci stron internetowych
  • RODO - rozporzadzenie o ochronie danych osobowych
  • Kanban - metoda zarzadzania zadaniami w projekcie
  • MVP - Minimum Viable Product, najprostsza dzialajaca wersja
✏️

Zadania

Latwe

Zadanie 1: Mapa myslowa calego roku

Stworz mape myslowa podsumowujaca caly material z klasy II. W centrum "Informatyka Klasa II", glowne galerie: Algorytmy, Programowanie, Bazy danych, Spoleczenstwo informacyjne, Projekty. Do kazdej galezi dopisz 3-5 kluczowych pojec.

Srednie

Zadanie 2: Cwiczenia z algorytmow

Rozwiaz nastepujace zadania (na kartce lub w Pythonie):

a) Napisz rekurencyjna funkcje obliczajaca n-ty wyraz ciagu Fibonacciego.
b) Jaka jest zlozonosc obliczeniowa sortowania babelkowego? A sortowania przez scalanie?
c) Dla listy [38, 27, 43, 3, 9, 82, 10] - wykonaj reczne sortowanie przez scalanie (pokaz kroki).

Pokaz rozwiazanie a)
def fibonacci(n):
    """Rekurencyjna funkcja Fibonacciego."""
    if n <= 0:
        return 0
    elif n == 1:
        return 1
    else:
        return fibonacci(n - 1) + fibonacci(n - 2)

# Test:
for i in range(10):
    print(f"F({i}) = {fibonacci(i)}")
# 0, 1, 1, 2, 3, 5, 8, 13, 21, 34
Srednie

Zadanie 3: Cwiczenia z Pythona i SQL

a) Napisz klase Uczen z atrybutami: imie, nazwisko, oceny (lista). Dodaj metody: dodaj_ocene(), srednia(), __str__().
b) Napisz zapytanie SQL, ktore: (1) tworzy tabele "produkty" z kolumnami id, nazwa, cena, ilosc; (2) wstawia 3 produkty; (3) wyswietla produkty drozisze niz 50 zl posortowane po cenie malejaco.

Pokaz rozwiazanie a)
class Uczen:
    def __init__(self, imie, nazwisko):
        self.imie = imie
        self.nazwisko = nazwisko
        self.oceny = []

    def dodaj_ocene(self, ocena):
        if 1 <= ocena <= 6:
            self.oceny.append(ocena)
        else:
            print("Ocena musi byc miedzy 1 a 6!")

    def srednia(self):
        if not self.oceny:
            return 0
        return sum(self.oceny) / len(self.oceny)

    def __str__(self):
        return f"{self.imie} {self.nazwisko}, srednia: {self.srednia():.2f}"

# Test:
u = Uczen("Jan", "Kowalski")
u.dodaj_ocene(5)
u.dodaj_ocene(4)
u.dodaj_ocene(3)
print(u)  # Jan Kowalski, srednia: 4.00
Trudne

Zadanie 4: Samoocena i identyfikacja luk

Przejrzyj liste tematow z teorii. Dla kazdego tematu ocen swoja znajomosc w skali: (A) znam dobrze, (B) znam podstawy, ale potrzebuje powtorki, (C) nie znam / nie pamietam. Dla tematow z kategoria B i C - zaplanuj powtorke (jakie materialy przerobisz, kiedy).

🎥

Materialy wideo

#3 Samouczek Pythona dla początkujących | Wprowadzenie do Pythona
Telusko
Python - pelny kurs powtorkowy
freeCodeCamp
🎧

Podcasty

✔️

Quiz - sprawdz sie!

📜

Podstawa programowa

← Lekcja 27: Informatyka a kariera zawodowa Lekcja 29: Przygotowanie do sprawdzianu →